Get a feel for the data
Before diving into our data cleaning routine, we must first understand the basic structure of the data. This involves looking at things like the class() of the data object to make sure it’s what we expect (generally a data.frame) in addition to checking its dimensions with dim() and the column names with names().
# Read weather data
library(readr)
weather <- readRDS("../xDatasets/weather.rds")# Verify that weather is a data.frame
class(weather)## [1] "data.frame"
# Check the dimensions
dim(weather)## [1] 286 35
# View the column names
names(weather)## [1] "X" "year" "month" "measure" "X1" "X2" "X3"
## [8] "X4" "X5" "X6" "X7" "X8" "X9" "X10"
## [15] "X11" "X12" "X13" "X14" "X15" "X16" "X17"
## [22] "X18" "X19" "X20" "X21" "X22" "X23" "X24"
## [29] "X25" "X26" "X27" "X28" "X29" "X30" "X31"
We’ve confirmed that the object is a data frame with 286 rows and 35 columns. We’ll see what the columns represent in the upcoming exercises.
Summarize the data
Next up is to look at some summaries of the data. This is where functions like str(), glimpse() from dplyr, and summary() come in handy.
# View the structure of the data
str(weather, give.attr = FALSE)## 'data.frame': 286 obs. of 35 variables:
## $ X : int 1 2 3 4 5 6 7 8 9 10 ...
## $ year : int 2014 2014 2014 2014 2014 2014 2014 2014 2014 2014 ...
## $ month : int 12 12 12 12 12 12 12 12 12 12 ...
## $ measure: chr "Max.TemperatureF" "Mean.TemperatureF" "Min.TemperatureF" "Max.Dew.PointF" ...
## $ X1 : chr "64" "52" "39" "46" ...
## $ X2 : chr "42" "38" "33" "40" ...
## $ X3 : chr "51" "44" "37" "49" ...
## $ X4 : chr "43" "37" "30" "24" ...
## $ X5 : chr "42" "34" "26" "37" ...
## $ X6 : chr "45" "42" "38" "45" ...
## $ X7 : chr "38" "30" "21" "36" ...
## $ X8 : chr "29" "24" "18" "28" ...
## $ X9 : chr "49" "39" "29" "49" ...
## $ X10 : chr "48" "43" "38" "45" ...
## $ X11 : chr "39" "36" "32" "37" ...
## $ X12 : chr "39" "35" "31" "28" ...
## $ X13 : chr "42" "37" "32" "28" ...
## $ X14 : chr "45" "39" "33" "29" ...
## $ X15 : chr "42" "37" "32" "33" ...
## $ X16 : chr "44" "40" "35" "42" ...
## $ X17 : chr "49" "45" "41" "46" ...
## $ X18 : chr "44" "40" "36" "34" ...
## $ X19 : chr "37" "33" "29" "25" ...
## $ X20 : chr "36" "32" "27" "30" ...
## $ X21 : chr "36" "33" "30" "30" ...
## $ X22 : chr "44" "39" "33" "39" ...
## $ X23 : chr "47" "45" "42" "45" ...
## $ X24 : chr "46" "44" "41" "46" ...
## $ X25 : chr "59" "52" "44" "58" ...
## $ X26 : chr "50" "44" "37" "31" ...
## $ X27 : chr "52" "45" "38" "34" ...
## $ X28 : chr "52" "46" "40" "42" ...
## $ X29 : chr "41" "36" "30" "26" ...
## $ X30 : chr "30" "26" "22" "10" ...
## $ X31 : chr "30" "25" "20" "8" ...
# Load dplyr package
library(dplyr)
# Look at the structure using dplyr's glimpse()
glimpse(weather)## Observations: 286
## Variables: 35
## $ X <int> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,...
## $ year <int> 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, 2014, ...
## $ month <int> 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12...
## $ measure <chr> "Max.TemperatureF", "Mean.TemperatureF", "Min.Temperat...
## $ X1 <chr> "64", "52", "39", "46", "40", "26", "74", "63", "52", ...
## $ X2 <chr> "42", "38", "33", "40", "27", "17", "92", "72", "51", ...
## $ X3 <chr> "51", "44", "37", "49", "42", "24", "100", "79", "57",...
## $ X4 <chr> "43", "37", "30", "24", "21", "13", "69", "54", "39", ...
## $ X5 <chr> "42", "34", "26", "37", "25", "12", "85", "66", "47", ...
## $ X6 <chr> "45", "42", "38", "45", "40", "36", "100", "93", "85",...
## $ X7 <chr> "38", "30", "21", "36", "20", "-3", "92", "61", "29", ...
## $ X8 <chr> "29", "24", "18", "28", "16", "3", "92", "70", "47", "...
## $ X9 <chr> "49", "39", "29", "49", "41", "28", "100", "93", "86",...
## $ X10 <chr> "48", "43", "38", "45", "39", "37", "100", "95", "89",...
## $ X11 <chr> "39", "36", "32", "37", "31", "27", "92", "87", "82", ...
## $ X12 <chr> "39", "35", "31", "28", "27", "25", "85", "75", "64", ...
## $ X13 <chr> "42", "37", "32", "28", "26", "24", "75", "65", "55", ...
## $ X14 <chr> "45", "39", "33", "29", "27", "25", "82", "68", "53", ...
## $ X15 <chr> "42", "37", "32", "33", "29", "27", "89", "75", "60", ...
## $ X16 <chr> "44", "40", "35", "42", "36", "30", "96", "85", "73", ...
## $ X17 <chr> "49", "45", "41", "46", "41", "32", "100", "85", "70",...
## $ X18 <chr> "44", "40", "36", "34", "30", "26", "89", "73", "57", ...
## $ X19 <chr> "37", "33", "29", "25", "22", "20", "69", "63", "56", ...
## $ X20 <chr> "36", "32", "27", "30", "24", "20", "89", "79", "69", ...
## $ X21 <chr> "36", "33", "30", "30", "27", "25", "85", "77", "69", ...
## $ X22 <chr> "44", "39", "33", "39", "34", "25", "89", "79", "69", ...
## $ X23 <chr> "47", "45", "42", "45", "42", "37", "100", "91", "82",...
## $ X24 <chr> "46", "44", "41", "46", "44", "41", "100", "98", "96",...
## $ X25 <chr> "59", "52", "44", "58", "43", "29", "100", "75", "49",...
## $ X26 <chr> "50", "44", "37", "31", "29", "28", "70", "60", "49", ...
## $ X27 <chr> "52", "45", "38", "34", "31", "29", "70", "60", "50", ...
## $ X28 <chr> "52", "46", "40", "42", "35", "27", "76", "65", "53", ...
## $ X29 <chr> "41", "36", "30", "26", "20", "10", "64", "51", "37", ...
## $ X30 <chr> "30", "26", "22", "10", "4", "-6", "50", "38", "26", "...
## $ X31 <chr> "30", "25", "20", "8", "5", "1", "57", "44", "31", "30...
# View a summary of the data
sum_weather <- as.data.frame(do.call(cbind, lapply(weather, summary)))
sum_weather[,-1] %>%
kable() %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive"), full_width = F, position = "left", , font_size = 11) %>%
row_spec(0, bold = T, color = "white", background = "#3f7689")| year | month | measure | X1 | X2 | X3 | X4 | X5 | X6 | X7 | X8 | X9 | X10 | X11 | X12 | X13 | X14 | X15 | X16 | X17 | X18 | X19 | X20 | X21 | X22 | X23 | X24 | X25 | X26 | X27 | X28 | X29 | X30 | X31 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Min. | 2014 | 1 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 |
| 1st Qu. | 2015 | 4 | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character |
| Median | 2015 | 7 | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character |
| Mean | 2014.92307692308 | 6.92307692307692 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 | 286 |
| 3rd Qu. | 2015 | 10 | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character |
| Max. | 2015 | 12 | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character | character |
Take a closer look
After understanding the structure of the data and looking at some brief summaries, it often helps to preview the actual data. The functions head() and tail() allow you to view the top and bottom rows of the data, respectively. Recall you’ll be shown 6 rows by default, but you can alter this behavior with a second argument to the function.
# View first 15 rows
weather %>%
head(15) %>%
kable() %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive"), full_width = F, position = "left", , font_size = 11) %>%
row_spec(0, bold = T, color = "white", background = "#3f7689")| X | year | month | measure | X1 | X2 | X3 | X4 | X5 | X6 | X7 | X8 | X9 | X10 | X11 | X12 | X13 | X14 | X15 | X16 | X17 | X18 | X19 | X20 | X21 | X22 | X23 | X24 | X25 | X26 | X27 | X28 | X29 | X30 | X31 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 2014 | 12 | Max.TemperatureF | 64 | 42 | 51 | 43 | 42 | 45 | 38 | 29 | 49 | 48 | 39 | 39 | 42 | 45 | 42 | 44 | 49 | 44 | 37 | 36 | 36 | 44 | 47 | 46 | 59 | 50 | 52 | 52 | 41 | 30 | 30 |
| 2 | 2014 | 12 | Mean.TemperatureF | 52 | 38 | 44 | 37 | 34 | 42 | 30 | 24 | 39 | 43 | 36 | 35 | 37 | 39 | 37 | 40 | 45 | 40 | 33 | 32 | 33 | 39 | 45 | 44 | 52 | 44 | 45 | 46 | 36 | 26 | 25 |
| 3 | 2014 | 12 | Min.TemperatureF | 39 | 33 | 37 | 30 | 26 | 38 | 21 | 18 | 29 | 38 | 32 | 31 | 32 | 33 | 32 | 35 | 41 | 36 | 29 | 27 | 30 | 33 | 42 | 41 | 44 | 37 | 38 | 40 | 30 | 22 | 20 |
| 4 | 2014 | 12 | Max.Dew.PointF | 46 | 40 | 49 | 24 | 37 | 45 | 36 | 28 | 49 | 45 | 37 | 28 | 28 | 29 | 33 | 42 | 46 | 34 | 25 | 30 | 30 | 39 | 45 | 46 | 58 | 31 | 34 | 42 | 26 | 10 | 8 |
| 5 | 2014 | 12 | MeanDew.PointF | 40 | 27 | 42 | 21 | 25 | 40 | 20 | 16 | 41 | 39 | 31 | 27 | 26 | 27 | 29 | 36 | 41 | 30 | 22 | 24 | 27 | 34 | 42 | 44 | 43 | 29 | 31 | 35 | 20 | 4 | 5 |
| 6 | 2014 | 12 | Min.DewpointF | 26 | 17 | 24 | 13 | 12 | 36 | -3 | 3 | 28 | 37 | 27 | 25 | 24 | 25 | 27 | 30 | 32 | 26 | 20 | 20 | 25 | 25 | 37 | 41 | 29 | 28 | 29 | 27 | 10 | -6 | 1 |
| 7 | 2014 | 12 | Max.Humidity | 74 | 92 | 100 | 69 | 85 | 100 | 92 | 92 | 100 | 100 | 92 | 85 | 75 | 82 | 89 | 96 | 100 | 89 | 69 | 89 | 85 | 89 | 100 | 100 | 100 | 70 | 70 | 76 | 64 | 50 | 57 |
| 8 | 2014 | 12 | Mean.Humidity | 63 | 72 | 79 | 54 | 66 | 93 | 61 | 70 | 93 | 95 | 87 | 75 | 65 | 68 | 75 | 85 | 85 | 73 | 63 | 79 | 77 | 79 | 91 | 98 | 75 | 60 | 60 | 65 | 51 | 38 | 44 |
| 9 | 2014 | 12 | Min.Humidity | 52 | 51 | 57 | 39 | 47 | 85 | 29 | 47 | 86 | 89 | 82 | 64 | 55 | 53 | 60 | 73 | 70 | 57 | 56 | 69 | 69 | 69 | 82 | 96 | 49 | 49 | 50 | 53 | 37 | 26 | 31 |
| 10 | 2014 | 12 | Max.Sea.Level.PressureIn | 30.45 | 30.71 | 30.4 | 30.56 | 30.68 | 30.42 | 30.69 | 30.77 | 30.51 | 29.58 | 29.81 | 29.88 | 29.86 | 29.91 | 30.15 | 30.17 | 29.91 | 29.87 | 30.15 | 30.31 | 30.37 | 30.4 | 30.31 | 30.13 | 29.96 | 30.16 | 30.22 | 29.99 | 30.22 | 30.36 | 30.32 |
| 11 | 2014 | 12 | Mean.Sea.Level.PressureIn | 30.13 | 30.59 | 30.07 | 30.33 | 30.59 | 30.24 | 30.46 | 30.67 | 30.04 | 29.5 | 29.61 | 29.85 | 29.82 | 29.83 | 30.05 | 30.09 | 29.75 | 29.78 | 29.98 | 30.26 | 30.32 | 30.35 | 30.23 | 29.9 | 29.63 | 30.11 | 30.14 | 29.87 | 30.12 | 30.32 | 30.25 |
| 12 | 2014 | 12 | Min.Sea.Level.PressureIn | 30.01 | 30.4 | 29.87 | 30.09 | 30.45 | 30.16 | 30.24 | 30.51 | 29.49 | 29.43 | 29.44 | 29.81 | 29.78 | 29.78 | 29.91 | 29.92 | 29.69 | 29.71 | 29.86 | 30.17 | 30.28 | 30.3 | 30.16 | 29.55 | 29.47 | 29.99 | 30.03 | 29.77 | 30 | 30.23 | 30.13 |
| 13 | 2014 | 12 | Max.VisibilityMiles | 10 | 10 | 10 | 10 | 10 | 10 | 10 | 10 | 10 | 10 | 10 | 10 | 10 | 10 | 10 | 10 | 10 | 10 | 10 | 10 | 10 | 10 | 10 | 2 | 10 | 10 | 10 | 10 | 10 | 10 | 10 |
| 14 | 2014 | 12 | Mean.VisibilityMiles | 10 | 8 | 5 | 10 | 10 | 4 | 10 | 8 | 2 | 3 | 7 | 10 | 10 | 10 | 10 | 9 | 6 | 10 | 10 | 10 | 9 | 10 | 5 | 1 | 8 | 10 | 10 | 10 | 10 | 10 | 10 |
| 15 | 2014 | 12 | Min.VisibilityMiles | 10 | 2 | 1 | 10 | 5 | 0 | 5 | 2 | 1 | 1 | 1 | 7 | 10 | 10 | 10 | 5 | 1 | 10 | 10 | 7 | 6 | 4 | 1 | 0 | 1 | 10 | 10 | 10 | 10 | 10 | 10 |
# View the last 10 rows
weather %>%
tail(10) %>%
kable() %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive"), full_width = F, position = "left", , font_size = 11) %>%
row_spec(0, bold = T, color = "white", background = "#3f7689")| X | year | month | measure | X1 | X2 | X3 | X4 | X5 | X6 | X7 | X8 | X9 | X10 | X11 | X12 | X13 | X14 | X15 | X16 | X17 | X18 | X19 | X20 | X21 | X22 | X23 | X24 | X25 | X26 | X27 | X28 | X29 | X30 | X31 | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 277 | 277 | 2015 | 12 | Max.VisibilityMiles | 10 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
| 278 | 278 | 2015 | 12 | Mean.VisibilityMiles | 8 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
| 279 | 279 | 2015 | 12 | Min.VisibilityMiles | 1 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
| 280 | 280 | 2015 | 12 | Max.Wind.SpeedMPH | 15 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
| 281 | 281 | 2015 | 12 | Mean.Wind.SpeedMPH | 6 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
| 282 | 282 | 2015 | 12 | Max.Gust.SpeedMPH | 17 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
| 283 | 283 | 2015 | 12 | PrecipitationIn | 0.14 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
| 284 | 284 | 2015 | 12 | CloudCover | 7 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
| 285 | 285 | 2015 | 12 | Events | Rain | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
| 286 | 286 | 2015 | 12 | WindDirDegrees | 109 | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA | NA |
Column names are values
The weather dataset suffers from one of the five most common symptoms of messy data: column names are values. In particular, the column names X1-X31 represent days of the month, which should really be values of a new variable called day.
The tidyr package provides the gather() function for exactly this scenario.
gather(df, time, val, t1:t3)
Notice that gather() allows you to select multiple columns to be gathered by using the : operator.
# Load the tidyr package
library(tidyr)
# Gather the columns
weather2 <- gather(weather, day, value, X1:X31, na.rm = TRUE)
# View the head
weather2 %>%
head() %>%
kable() %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive"), full_width = F, position = "left", , font_size = 11) %>%
row_spec(0, bold = T, color = "white", background = "#3f7689")| X | year | month | measure | day | value |
|---|---|---|---|---|---|
| 1 | 2014 | 12 | Max.TemperatureF | X1 | 64 |
| 2 | 2014 | 12 | Mean.TemperatureF | X1 | 52 |
| 3 | 2014 | 12 | Min.TemperatureF | X1 | 39 |
| 4 | 2014 | 12 | Max.Dew.PointF | X1 | 46 |
| 5 | 2014 | 12 | MeanDew.PointF | X1 | 40 |
| 6 | 2014 | 12 | Min.DewpointF | X1 | 26 |
Values are variable names
Our data suffer from a second common symptom of messy data: values are variable names. Specifically, values in the measure column should be variables (i.e. column names) in our dataset.
The spread() function from tidyr is designed to help with this.
spread(df2, time, val)
Note how the values of the time column now become column names. The tidyr package is already loaded.
# First remove column of row names
without_x <- weather2[, -1]
# Spread the data
weather3 <- spread(without_x, measure, value)
# View the head
weather3 %>%
head() %>%
kable() %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive"), full_width = F, position = "center", , font_size = 11) %>%
row_spec(0, bold = T, color = "white", background = "#3f7689")| year | month | day | CloudCover | Events | Max.Dew.PointF | Max.Gust.SpeedMPH | Max.Humidity | Max.Sea.Level.PressureIn | Max.TemperatureF | Max.VisibilityMiles | Max.Wind.SpeedMPH | Mean.Humidity | Mean.Sea.Level.PressureIn | Mean.TemperatureF | Mean.VisibilityMiles | Mean.Wind.SpeedMPH | MeanDew.PointF | Min.DewpointF | Min.Humidity | Min.Sea.Level.PressureIn | Min.TemperatureF | Min.VisibilityMiles | PrecipitationIn | WindDirDegrees |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2014 | 12 | X1 | 6 | Rain | 46 | 29 | 74 | 30.45 | 64 | 10 | 22 | 63 | 30.13 | 52 | 10 | 13 | 40 | 26 | 52 | 30.01 | 39 | 10 | 0.01 | 268 |
| 2014 | 12 | X10 | 8 | Rain | 45 | 29 | 100 | 29.58 | 48 | 10 | 23 | 95 | 29.5 | 43 | 3 | 13 | 39 | 37 | 89 | 29.43 | 38 | 1 | 0.28 | 357 |
| 2014 | 12 | X11 | 8 | Rain-Snow | 37 | 28 | 92 | 29.81 | 39 | 10 | 21 | 87 | 29.61 | 36 | 7 | 13 | 31 | 27 | 82 | 29.44 | 32 | 1 | 0.02 | 230 |
| 2014 | 12 | X12 | 7 | Snow | 28 | 21 | 85 | 29.88 | 39 | 10 | 16 | 75 | 29.85 | 35 | 10 | 11 | 27 | 25 | 64 | 29.81 | 31 | 7 | T | 286 |
| 2014 | 12 | X13 | 5 | 28 | 23 | 75 | 29.86 | 42 | 10 | 17 | 65 | 29.82 | 37 | 10 | 12 | 26 | 24 | 55 | 29.78 | 32 | 10 | T | 298 | |
| 2014 | 12 | X14 | 4 | 29 | 20 | 82 | 29.91 | 45 | 10 | 15 | 68 | 29.83 | 39 | 10 | 10 | 27 | 25 | 53 | 29.78 | 33 | 10 | 0.00 | 306 |
The dataset is looking better already!
Clean up dates
Now that the weather dataset adheres to tidy data principles, the next step is to prepare it for analysis. We’ll start by combining the year, month, and day columns and recoding the resulting character column as a date. We can use a combination of base R, stringr, and lubridate to accomplish this task.
tidyr and dplyr are already loaded.
# Load the stringr and lubridate packages
library(stringr)
library(lubridate)
# Remove X's from day column
weather3$day <- str_replace(weather3$day, "X", "")
# Unite the year, month, and day columns
weather4 <- unite(weather3, date, year, month, day, sep = "-")
# Convert date column to proper date format using lubridates's ymd()
weather4$date <- as.Date(weather4$date)
# Rearrange columns using dplyr's select()
weather5 <- select(weather4, date, Events, CloudCover:WindDirDegrees)
# View the head of weather5
weather5 %>%
head() %>%
kable() %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive"), full_width = F, position = "left", , font_size = 11) %>%
row_spec(0, bold = T, color = "white", background = "#3f7689")| date | Events | CloudCover | Max.Dew.PointF | Max.Gust.SpeedMPH | Max.Humidity | Max.Sea.Level.PressureIn | Max.TemperatureF | Max.VisibilityMiles | Max.Wind.SpeedMPH | Mean.Humidity | Mean.Sea.Level.PressureIn | Mean.TemperatureF | Mean.VisibilityMiles | Mean.Wind.SpeedMPH | MeanDew.PointF | Min.DewpointF | Min.Humidity | Min.Sea.Level.PressureIn | Min.TemperatureF | Min.VisibilityMiles | PrecipitationIn | WindDirDegrees |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2014-12-01 | Rain | 6 | 46 | 29 | 74 | 30.45 | 64 | 10 | 22 | 63 | 30.13 | 52 | 10 | 13 | 40 | 26 | 52 | 30.01 | 39 | 10 | 0.01 | 268 |
| 2014-12-10 | Rain | 8 | 45 | 29 | 100 | 29.58 | 48 | 10 | 23 | 95 | 29.5 | 43 | 3 | 13 | 39 | 37 | 89 | 29.43 | 38 | 1 | 0.28 | 357 |
| 2014-12-11 | Rain-Snow | 8 | 37 | 28 | 92 | 29.81 | 39 | 10 | 21 | 87 | 29.61 | 36 | 7 | 13 | 31 | 27 | 82 | 29.44 | 32 | 1 | 0.02 | 230 |
| 2014-12-12 | Snow | 7 | 28 | 21 | 85 | 29.88 | 39 | 10 | 16 | 75 | 29.85 | 35 | 10 | 11 | 27 | 25 | 64 | 29.81 | 31 | 7 | T | 286 |
| 2014-12-13 | 5 | 28 | 23 | 75 | 29.86 | 42 | 10 | 17 | 65 | 29.82 | 37 | 10 | 12 | 26 | 24 | 55 | 29.78 | 32 | 10 | T | 298 | |
| 2014-12-14 | 4 | 29 | 20 | 82 | 29.91 | 45 | 10 | 15 | 68 | 29.83 | 39 | 10 | 10 | 27 | 25 | 53 | 29.78 | 33 | 10 | 0.00 | 306 |
A closer look at column types
It’s important for analysis that variables are coded appropriately. This is not yet the case with our weather data. Recall that functions such as as.numeric() and as.character() can be used to coerce variables into different types.
It’s important to keep in mind that coercions are not always successful, particularly if there’s some data in a column that you don’t expect. For example, the following will cause problems:
as.numeric(c(4, 6.44, "some string", 222))
If you run the code above in the console, you’ll get a warning message saying that R introduced an NA in the process of coercing to numeric. This is because it doesn’t know how to make a number out of a string (“some string”).
# View the structure of weather5
str(weather5, give.attr = FALSE)## 'data.frame': 366 obs. of 23 variables:
## $ date : Date, format: "2014-12-01" "2014-12-10" ...
## $ Events : chr "Rain" "Rain" "Rain-Snow" "Snow" ...
## $ CloudCover : chr "6" "8" "8" "7" ...
## $ Max.Dew.PointF : chr "46" "45" "37" "28" ...
## $ Max.Gust.SpeedMPH : chr "29" "29" "28" "21" ...
## $ Max.Humidity : chr "74" "100" "92" "85" ...
## $ Max.Sea.Level.PressureIn : chr "30.45" "29.58" "29.81" "29.88" ...
## $ Max.TemperatureF : chr "64" "48" "39" "39" ...
## $ Max.VisibilityMiles : chr "10" "10" "10" "10" ...
## $ Max.Wind.SpeedMPH : chr "22" "23" "21" "16" ...
## $ Mean.Humidity : chr "63" "95" "87" "75" ...
## $ Mean.Sea.Level.PressureIn: chr "30.13" "29.5" "29.61" "29.85" ...
## $ Mean.TemperatureF : chr "52" "43" "36" "35" ...
## $ Mean.VisibilityMiles : chr "10" "3" "7" "10" ...
## $ Mean.Wind.SpeedMPH : chr "13" "13" "13" "11" ...
## $ MeanDew.PointF : chr "40" "39" "31" "27" ...
## $ Min.DewpointF : chr "26" "37" "27" "25" ...
## $ Min.Humidity : chr "52" "89" "82" "64" ...
## $ Min.Sea.Level.PressureIn : chr "30.01" "29.43" "29.44" "29.81" ...
## $ Min.TemperatureF : chr "39" "38" "32" "31" ...
## $ Min.VisibilityMiles : chr "10" "1" "1" "7" ...
## $ PrecipitationIn : chr "0.01" "0.28" "0.02" "T" ...
## $ WindDirDegrees : chr "268" "357" "230" "286" ...
# Examine the first 20 rows of weather5. Are most of the characters numeric?
weather5 %>%
select(date, Events, CloudCover, Max.Humidity, PrecipitationIn) %>%
head(20) %>%
kable() %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive"), full_width = F, position = "left", , font_size = 11) %>%
row_spec(0, bold = T, color = "white", background = "#3f7689")| date | Events | CloudCover | Max.Humidity | PrecipitationIn |
|---|---|---|---|---|
| 2014-12-01 | Rain | 6 | 74 | 0.01 |
| 2014-12-10 | Rain | 8 | 100 | 0.28 |
| 2014-12-11 | Rain-Snow | 8 | 92 | 0.02 |
| 2014-12-12 | Snow | 7 | 85 | T |
| 2014-12-13 | 5 | 75 | T | |
| 2014-12-14 | 4 | 82 | 0.00 | |
| 2014-12-15 | 2 | 89 | 0.00 | |
| 2014-12-16 | Rain | 8 | 96 | T |
| 2014-12-17 | Rain | 8 | 100 | 0.43 |
| 2014-12-18 | Rain | 7 | 89 | 0.01 |
| 2014-12-19 | 4 | 69 | 0.00 | |
| 2014-12-02 | Rain-Snow | 7 | 92 | 0.10 |
| 2014-12-20 | Snow | 6 | 89 | T |
| 2014-12-21 | Snow | 8 | 85 | T |
| 2014-12-22 | Rain | 7 | 89 | 0.05 |
| 2014-12-23 | Rain | 8 | 100 | 0.25 |
| 2014-12-24 | Fog-Rain | 8 | 100 | 0.56 |
| 2014-12-25 | Rain | 6 | 100 | 0.14 |
| 2014-12-26 | 1 | 70 | 0.00 | |
| 2014-12-27 | 3 | 70 | 0.00 |
# See what happens if we try to convert PrecipitationIn to numeric
as.numeric(weather5$PrecipitationIn)[1:10]## Warning: NAs durch Umwandlung erzeugt
## [1] 0.01 0.28 0.02 NA NA 0.00 0.00 NA 0.43 0.01
Scroll the output, notice the warning message. Go back to the results of the head command if need be. What values in PrecipitationIn would become NA if coerced to numbers? Why would they be in the dataset to begin with?
Column type conversions
As you saw in the last exercise, "T" was used to denote a trace amount (i.e. too small to be accurately measured) of precipitation in the PrecipitationIn column. In order to coerce this column to numeric, you’ll need to deal with this somehow. To keep things simple, we will just replace "T" with zero, as a string ("0").
The dplyr and stringr packages are already loaded!
# Replace "T" with "0" (T = trace)
weather5$PrecipitationIn <- str_replace(weather5$PrecipitationIn, "T", "0")
# Convert characters to numerics
weather6 <- mutate_at(weather5, vars(CloudCover:WindDirDegrees), funs(as.numeric))## Warning: funs() is soft deprecated as of dplyr 0.8.0
## please use list() instead
##
## # Before:
## funs(name = f(.)
##
## # After:
## list(name = ~f(.))
## This warning is displayed once per session.
# Look at result
str(weather6, give.attr = FALSE)## 'data.frame': 366 obs. of 23 variables:
## $ date : Date, format: "2014-12-01" "2014-12-10" ...
## $ Events : chr "Rain" "Rain" "Rain-Snow" "Snow" ...
## $ CloudCover : num 6 8 8 7 5 4 2 8 8 7 ...
## $ Max.Dew.PointF : num 46 45 37 28 28 29 33 42 46 34 ...
## $ Max.Gust.SpeedMPH : num 29 29 28 21 23 20 21 10 26 30 ...
## $ Max.Humidity : num 74 100 92 85 75 82 89 96 100 89 ...
## $ Max.Sea.Level.PressureIn : num 30.4 29.6 29.8 29.9 29.9 ...
## $ Max.TemperatureF : num 64 48 39 39 42 45 42 44 49 44 ...
## $ Max.VisibilityMiles : num 10 10 10 10 10 10 10 10 10 10 ...
## $ Max.Wind.SpeedMPH : num 22 23 21 16 17 15 15 8 20 23 ...
## $ Mean.Humidity : num 63 95 87 75 65 68 75 85 85 73 ...
## $ Mean.Sea.Level.PressureIn: num 30.1 29.5 29.6 29.9 29.8 ...
## $ Mean.TemperatureF : num 52 43 36 35 37 39 37 40 45 40 ...
## $ Mean.VisibilityMiles : num 10 3 7 10 10 10 10 9 6 10 ...
## $ Mean.Wind.SpeedMPH : num 13 13 13 11 12 10 6 4 11 14 ...
## $ MeanDew.PointF : num 40 39 31 27 26 27 29 36 41 30 ...
## $ Min.DewpointF : num 26 37 27 25 24 25 27 30 32 26 ...
## $ Min.Humidity : num 52 89 82 64 55 53 60 73 70 57 ...
## $ Min.Sea.Level.PressureIn : num 30 29.4 29.4 29.8 29.8 ...
## $ Min.TemperatureF : num 39 38 32 31 32 33 32 35 41 36 ...
## $ Min.VisibilityMiles : num 10 1 1 7 10 10 10 5 1 10 ...
## $ PrecipitationIn : num 0.01 0.28 0.02 0 0 0 0 0 0.43 0.01 ...
## $ WindDirDegrees : num 268 357 230 286 298 306 324 79 311 281 ...
It looks like our data are finally in the correct formats and organized in a logical manner! Now that our data are in the right form, we can begin the analysis.
Find missing values
Before dealing with missing values in the data, it’s important to find them and figure out why they exist in the first place. If your dataset is too big to look at all at once, like it is here, remember you can use sum() and is.na() to quickly size up the situation by counting the number of NA values.
The summary() function may also come in handy for identifying which variables contain the missing values. Finally, the which() function is useful for locating the missing values within a particular column.
# Count missing values
sum(is.na(weather6))## [1] 6
# Find missing values
sum_weather6 <- as.data.frame(do.call(cbind, lapply(weather6, summary)))## Warning in (function (..., deparse.level = 1) : number of rows of result is
## not a multiple of vector length (arg 1)
sum_weather6 [,-1] %>%
kable() %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive"), full_width = F, position = "left", , font_size = 11) %>%
row_spec(0, bold = T, color = "white", background = "#3f7689")| Events | CloudCover | Max.Dew.PointF | Max.Gust.SpeedMPH | Max.Humidity | Max.Sea.Level.PressureIn | Max.TemperatureF | Max.VisibilityMiles | Max.Wind.SpeedMPH | Mean.Humidity | Mean.Sea.Level.PressureIn | Mean.TemperatureF | Mean.VisibilityMiles | Mean.Wind.SpeedMPH | MeanDew.PointF | Min.DewpointF | Min.Humidity | Min.Sea.Level.PressureIn | Min.TemperatureF | Min.VisibilityMiles | PrecipitationIn | WindDirDegrees | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Min. | 366 | 0 | -6 | 0 | 39 | 29.58 | 18 | 2 | 8 | 28 | 29.49 | 8 | -1 | 4 | -11 | -18 | 16 | 29.16 | -3 | 0 | 0 | 1 |
| 1st Qu. | character | 3 | 32 | 21 | 73.25 | 30 | 42 | 10 | 16 | 56 | 29.87 | 36.25 | 8 | 8 | 24 | 16.25 | 35 | 29.76 | 30 | 2 | 0 | 113 |
| Median | character | 5 | 47.5 | 25.5 | 86 | 30.14 | 60 | 10 | 20 | 66 | 30.03 | 53.5 | 10 | 10 | 41 | 35 | 46 | 29.94 | 46 | 10 | 0 | 222 |
| Mean | 366 | 4.70765027322404 | 45.4754098360656 | 26.9888888888889 | 85.6857923497268 | 30.1553278688525 | 58.931693989071 | 9.90710382513661 | 20.620218579235 | 66.0218579234973 | 30.0382513661202 | 51.4043715846995 | 8.86065573770492 | 10.6803278688525 | 38.9590163934426 | 32.2459016393443 | 48.3087431693989 | 29.925956284153 | 43.327868852459 | 6.71584699453552 | 0.10155737704918 | 200.081967213115 |
| 3rd Qu. | character | 7 | 61 | 31.25 | 93 | 30.31 | 76 | 10 | 24 | 76.75 | 30.19 | 68 | 10 | 13 | 56 | 51 | 60 | 30.09 | 60 | 10 | 0.04 | 275 |
| Max. | character | 8 | 75 | 94 | 1000 | 30.88 | 96 | 10 | 38 | 98 | 30.77 | 84 | 10 | 22 | 71 | 68 | 96 | 30.64 | 74 | 10 | 2.9 | 360 |
| NA’s | 366 | 0 | -6 | 6 | 39 | 29.58 | 18 | 2 | 8 | 28 | 29.49 | 8 | -1 | 4 | -11 | -18 | 16 | 29.16 | -3 | 0 | 0 | 1 |
# Find indices of NAs in Max.Gust.SpeedMPH
ind <- which(is.na(weather6$Max.Gust.SpeedMPH))
# Look at the full rows for records missing Max.Gust.SpeedMPH
weather6[ind, ] %>%
kable() %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive"), full_width = F, position = "left", , font_size = 11) %>%
row_spec(0, bold = T, color = "white", background = "#3f7689")| date | Events | CloudCover | Max.Dew.PointF | Max.Gust.SpeedMPH | Max.Humidity | Max.Sea.Level.PressureIn | Max.TemperatureF | Max.VisibilityMiles | Max.Wind.SpeedMPH | Mean.Humidity | Mean.Sea.Level.PressureIn | Mean.TemperatureF | Mean.VisibilityMiles | Mean.Wind.SpeedMPH | MeanDew.PointF | Min.DewpointF | Min.Humidity | Min.Sea.Level.PressureIn | Min.TemperatureF | Min.VisibilityMiles | PrecipitationIn | WindDirDegrees | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 161 | 2015-05-18 | Fog | 6 | 52 | NA | 100 | 30.30 | 58 | 10 | 16 | 79 | 30.23 | 54 | 8 | 10 | 48 | 43 | 57 | 30.12 | 49 | 0 | 0 | 72 |
| 205 | 2015-06-03 | 7 | 48 | NA | 93 | 30.31 | 56 | 10 | 14 | 82 | 30.24 | 52 | 10 | 7 | 45 | 43 | 71 | 30.19 | 47 | 10 | 0 | 90 | |
| 273 | 2015-08-08 | 4 | 61 | NA | 87 | 30.02 | 76 | 10 | 14 | 68 | 29.99 | 69 | 10 | 6 | 57 | 54 | 49 | 29.95 | 61 | 10 | 0 | 45 | |
| 275 | 2015-09-01 | 1 | 63 | NA | 78 | 30.06 | 79 | 10 | 15 | 65 | 30.02 | 74 | 10 | 9 | 62 | 59 | 52 | 29.96 | 69 | 10 | 0 | 54 | |
| 308 | 2015-10-12 | 0 | 56 | NA | 89 | 29.86 | 76 | 10 | 15 | 65 | 29.80 | 64 | 10 | 8 | 51 | 48 | 41 | 29.74 | 51 | 10 | 0 | 199 | |
| 358 | 2015-11-03 | 1 | 44 | NA | 82 | 30.25 | 73 | 10 | 16 | 57 | 30.13 | 60 | 10 | 8 | 42 | 40 | 31 | 30.06 | 47 | 10 | 0 | 281 |
In this situation it’s unclear why these values are missing and there doesn’t appear to be any obvious pattern to their missingness, so we’ll leave them alone for now.
An obvious error
Besides missing values, we want to know if there are values in the data that are too extreme or bizarre to be plausible. A great way to start the search for these values is with summary().
Once implausible values are identified, they must be dealt with in an intelligent and informed way. Sometimes the best way forward is obvious and other times it may require some research and/or discussions with the original collectors of the data.
# Review distributions for all variables (see above)
#summary(weather6)
# Find row with Max.Humidity of 1000
ind <- which(weather6$Max.Humidity == 1000)
# Look at the data for that day
weather6[ind, ] %>%
kable() %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive"), full_width = F, position = "left", , font_size = 11) %>%
row_spec(0, bold = T, color = "white", background = "#3f7689")| date | Events | CloudCover | Max.Dew.PointF | Max.Gust.SpeedMPH | Max.Humidity | Max.Sea.Level.PressureIn | Max.TemperatureF | Max.VisibilityMiles | Max.Wind.SpeedMPH | Mean.Humidity | Mean.Sea.Level.PressureIn | Mean.TemperatureF | Mean.VisibilityMiles | Mean.Wind.SpeedMPH | MeanDew.PointF | Min.DewpointF | Min.Humidity | Min.Sea.Level.PressureIn | Min.TemperatureF | Min.VisibilityMiles | PrecipitationIn | WindDirDegrees | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 135 | 2015-04-21 | Fog-Rain-Thunderstorm | 6 | 57 | 94 | 1000 | 29.75 | 65 | 10 | 20 | 71 | 29.6 | 56 | 5 | 10 | 49 | 36 | 42 | 29.53 | 46 | 0 | 0.54 | 184 |
# Change 1000 to 100
weather6$Max.Humidity[ind] <- 100Once you find obvious errors, it’s not too hard to fix them if you know which values they should take.
Another obvious error
You’ve discovered and repaired one obvious error in the data, but it appears that there’s another. Sometimes you get lucky and can infer the correct or intended value from the other data. For example, if you know the minimum and maximum values of a particular metric on a given day…
# Look at summary of Mean.VisibilityMiles
summary(weather6$Mean.VisibilityMiles)## Min. 1st Qu. Median Mean 3rd Qu. Max.
## -1.000 8.000 10.000 8.861 10.000 10.000
# Get index of row with -1 value
ind <- which(weather6$Mean.VisibilityMiles == -1)
# Look at full row
weather6[ind,] %>%
kable() %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive"), full_width = F, position = "left", , font_size = 11) %>%
row_spec(0, bold = T, color = "white", background = "#3f7689")| date | Events | CloudCover | Max.Dew.PointF | Max.Gust.SpeedMPH | Max.Humidity | Max.Sea.Level.PressureIn | Max.TemperatureF | Max.VisibilityMiles | Max.Wind.SpeedMPH | Mean.Humidity | Mean.Sea.Level.PressureIn | Mean.TemperatureF | Mean.VisibilityMiles | Mean.Wind.SpeedMPH | MeanDew.PointF | Min.DewpointF | Min.Humidity | Min.Sea.Level.PressureIn | Min.TemperatureF | Min.VisibilityMiles | PrecipitationIn | WindDirDegrees | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 192 | 2015-06-18 | 5 | 54 | 23 | 72 | 30.14 | 76 | 10 | 17 | 59 | 30.04 | 67 | -1 | 10 | 49 | 45 | 46 | 29.93 | 57 | 10 | 0 | 189 |
# Set Mean.VisibilityMiles to the appropriate value
weather6$Mean.VisibilityMiles[ind] <- 10Check other extreme values
In addition to dealing with obvious errors in the data, we want to see if there are other extreme values. In addition to the trusty summary() function, hist() is useful for quickly getting a feel for how different variables are distributed.
# Look at histogram for MeanDew.PointF
hist(weather6$MeanDew.PointF)# Look at histogram for Min.TemperatureF
hist(weather6$Min.TemperatureF)# Compare to histogram for Mean.TemperatureF
hist(weather6$Mean.TemperatureF)Finishing touches
Before officially calling our weather data clean, we want to put a couple of finishing touches on the data. These are a bit more subjective and may not be necessary for analysis, but they will make the data easier for others to interpret, which is generally a good thing.
There are a number of stylistic conventions in the R language. Depending on who you ask, these conventions may vary. Because the period (.) has special meaning in certain situations, we generally recommend using underscores (_) to separate words in variable names. We also prefer all lowercase letters so that no one has to remember which letters are uppercase or lowercase.
Finally, the events column (renamed to be all lowercase in the first instruction) contains an empty string ("") for any day on which there was no significant weather event such as rain, fog, a thunderstorm, etc. However, if it’s the first time you’re seeing these data, it may not be obvious that this is the case, so it’s best for us to be explicit and replace the empty strings with something more meaningful.
new_colnames <- c("date", "events", "cloud_cover", "max_dew_point_f", "max_gust_speed_mph", "max_humidity", "max_sea_level_pressure_in", "max_temperature_f", "max_visibility_miles", "max_wind_speed_mph", "mean_humidity", "mean_sea_level_pressure_in", "mean_temperature_f", "mean_visibility_miles", "mean_wind_speed_mph", "mean_dew_point_f",
"min_dew_point_f", "min_humidity", "min_sea_level_pressure_in", "min_temperature_f", "min_visibility_miles", "precipitation_in", "wind_dir_degrees")
# Clean up column names
names(weather6) <- new_colnames
# Replace empty cells in events column
weather6$events[weather6$events == ""] <- "None"
# Print the first 6 rows of weather6
weather6 %>%
kable() %>%
kable_styling(bootstrap_options = c("striped", "hover", "condensed", "responsive"), full_width = F, position = "left", , font_size = 11) %>%
row_spec(0, bold = T, color = "white", background = "#3f7689") %>%
scroll_box(width = "100%", height = "500px")| date | events | cloud_cover | max_dew_point_f | max_gust_speed_mph | max_humidity | max_sea_level_pressure_in | max_temperature_f | max_visibility_miles | max_wind_speed_mph | mean_humidity | mean_sea_level_pressure_in | mean_temperature_f | mean_visibility_miles | mean_wind_speed_mph | mean_dew_point_f | min_dew_point_f | min_humidity | min_sea_level_pressure_in | min_temperature_f | min_visibility_miles | precipitation_in | wind_dir_degrees |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2014-12-01 | Rain | 6 | 46 | 29 | 74 | 30.45 | 64 | 10 | 22 | 63 | 30.13 | 52 | 10 | 13 | 40 | 26 | 52 | 30.01 | 39 | 10 | 0.01 | 268 |
| 2014-12-10 | Rain | 8 | 45 | 29 | 100 | 29.58 | 48 | 10 | 23 | 95 | 29.50 | 43 | 3 | 13 | 39 | 37 | 89 | 29.43 | 38 | 1 | 0.28 | 357 |
| 2014-12-11 | Rain-Snow | 8 | 37 | 28 | 92 | 29.81 | 39 | 10 | 21 | 87 | 29.61 | 36 | 7 | 13 | 31 | 27 | 82 | 29.44 | 32 | 1 | 0.02 | 230 |
| 2014-12-12 | Snow | 7 | 28 | 21 | 85 | 29.88 | 39 | 10 | 16 | 75 | 29.85 | 35 | 10 | 11 | 27 | 25 | 64 | 29.81 | 31 | 7 | 0.00 | 286 |
| 2014-12-13 | None | 5 | 28 | 23 | 75 | 29.86 | 42 | 10 | 17 | 65 | 29.82 | 37 | 10 | 12 | 26 | 24 | 55 | 29.78 | 32 | 10 | 0.00 | 298 |
| 2014-12-14 | None | 4 | 29 | 20 | 82 | 29.91 | 45 | 10 | 15 | 68 | 29.83 | 39 | 10 | 10 | 27 | 25 | 53 | 29.78 | 33 | 10 | 0.00 | 306 |
| 2014-12-15 | None | 2 | 33 | 21 | 89 | 30.15 | 42 | 10 | 15 | 75 | 30.05 | 37 | 10 | 6 | 29 | 27 | 60 | 29.91 | 32 | 10 | 0.00 | 324 |
| 2014-12-16 | Rain | 8 | 42 | 10 | 96 | 30.17 | 44 | 10 | 8 | 85 | 30.09 | 40 | 9 | 4 | 36 | 30 | 73 | 29.92 | 35 | 5 | 0.00 | 79 |
| 2014-12-17 | Rain | 8 | 46 | 26 | 100 | 29.91 | 49 | 10 | 20 | 85 | 29.75 | 45 | 6 | 11 | 41 | 32 | 70 | 29.69 | 41 | 1 | 0.43 | 311 |
| 2014-12-18 | Rain | 7 | 34 | 30 | 89 | 29.87 | 44 | 10 | 23 | 73 | 29.78 | 40 | 10 | 14 | 30 | 26 | 57 | 29.71 | 36 | 10 | 0.01 | 281 |
| 2014-12-19 | None | 4 | 25 | 23 | 69 | 30.15 | 37 | 10 | 17 | 63 | 29.98 | 33 | 10 | 11 | 22 | 20 | 56 | 29.86 | 29 | 10 | 0.00 | 305 |
| 2014-12-02 | Rain-Snow | 7 | 40 | 29 | 92 | 30.71 | 42 | 10 | 24 | 72 | 30.59 | 38 | 8 | 15 | 27 | 17 | 51 | 30.40 | 33 | 2 | 0.10 | 62 |
| 2014-12-20 | Snow | 6 | 30 | 26 | 89 | 30.31 | 36 | 10 | 21 | 79 | 30.26 | 32 | 10 | 10 | 24 | 20 | 69 | 30.17 | 27 | 7 | 0.00 | 350 |
| 2014-12-21 | Snow | 8 | 30 | 20 | 85 | 30.37 | 36 | 10 | 16 | 77 | 30.32 | 33 | 9 | 9 | 27 | 25 | 69 | 30.28 | 30 | 6 | 0.00 | 2 |
| 2014-12-22 | Rain | 7 | 39 | 22 | 89 | 30.40 | 44 | 10 | 18 | 79 | 30.35 | 39 | 10 | 8 | 34 | 25 | 69 | 30.30 | 33 | 4 | 0.05 | 24 |
| 2014-12-23 | Rain | 8 | 45 | 25 | 100 | 30.31 | 47 | 10 | 20 | 91 | 30.23 | 45 | 5 | 13 | 42 | 37 | 82 | 30.16 | 42 | 1 | 0.25 | 63 |
| 2014-12-24 | Fog-Rain | 8 | 46 | 15 | 100 | 30.13 | 46 | 2 | 13 | 98 | 29.90 | 44 | 1 | 6 | 44 | 41 | 96 | 29.55 | 41 | 0 | 0.56 | 12 |
| 2014-12-25 | Rain | 6 | 58 | 40 | 100 | 29.96 | 59 | 10 | 28 | 75 | 29.63 | 52 | 8 | 14 | 43 | 29 | 49 | 29.47 | 44 | 1 | 0.14 | 250 |
| 2014-12-26 | None | 1 | 31 | 25 | 70 | 30.16 | 50 | 10 | 18 | 60 | 30.11 | 44 | 10 | 11 | 29 | 28 | 49 | 29.99 | 37 | 10 | 0.00 | 255 |
| 2014-12-27 | None | 3 | 34 | 21 | 70 | 30.22 | 52 | 10 | 17 | 60 | 30.14 | 45 | 10 | 9 | 31 | 29 | 50 | 30.03 | 38 | 10 | 0.00 | 251 |
| 2014-12-28 | Rain | 8 | 42 | 31 | 76 | 29.99 | 52 | 10 | 22 | 65 | 29.87 | 46 | 10 | 14 | 35 | 27 | 53 | 29.77 | 40 | 10 | 0.01 | 252 |
| 2014-12-29 | None | 4 | 26 | 22 | 64 | 30.22 | 41 | 10 | 15 | 51 | 30.12 | 36 | 10 | 9 | 20 | 10 | 37 | 30.00 | 30 | 10 | 0.00 | 288 |
| 2014-12-03 | Rain | 8 | 49 | 38 | 100 | 30.40 | 51 | 10 | 29 | 79 | 30.07 | 44 | 5 | 12 | 42 | 24 | 57 | 29.87 | 37 | 1 | 0.44 | 254 |
| 2014-12-30 | None | 2 | 10 | 21 | 50 | 30.36 | 30 | 10 | 16 | 38 | 30.32 | 26 | 10 | 10 | 4 | -6 | 26 | 30.23 | 22 | 10 | 0.00 | 313 |
| 2014-12-31 | None | 1 | 8 | 22 | 57 | 30.32 | 30 | 10 | 17 | 44 | 30.25 | 25 | 10 | 9 | 5 | 1 | 31 | 30.13 | 20 | 10 | 0.00 | 269 |
| 2014-12-04 | None | 3 | 24 | 33 | 69 | 30.56 | 43 | 10 | 25 | 54 | 30.33 | 37 | 10 | 12 | 21 | 13 | 39 | 30.09 | 30 | 10 | 0.00 | 292 |
| 2014-12-05 | Rain | 5 | 37 | 26 | 85 | 30.68 | 42 | 10 | 22 | 66 | 30.59 | 34 | 10 | 10 | 25 | 12 | 47 | 30.45 | 26 | 5 | 0.11 | 61 |
| 2014-12-06 | Rain | 8 | 45 | 25 | 100 | 30.42 | 45 | 10 | 22 | 93 | 30.24 | 42 | 4 | 8 | 40 | 36 | 85 | 30.16 | 38 | 0 | 1.09 | 313 |
| 2014-12-07 | Rain | 6 | 36 | 32 | 92 | 30.69 | 38 | 10 | 25 | 61 | 30.46 | 30 | 10 | 15 | 20 | -3 | 29 | 30.24 | 21 | 5 | 0.13 | 350 |
| 2014-12-08 | Snow | 8 | 28 | 28 | 92 | 30.77 | 29 | 10 | 21 | 70 | 30.67 | 24 | 8 | 13 | 16 | 3 | 47 | 30.51 | 18 | 2 | 0.03 | 354 |
| 2014-12-09 | Rain | 8 | 49 | 52 | 100 | 30.51 | 49 | 10 | 38 | 93 | 30.04 | 39 | 2 | 20 | 41 | 28 | 86 | 29.49 | 29 | 1 | 2.90 | 38 |
| 2015-01-01 | None | 3 | 16 | 29 | 53 | 30.10 | 33 | 10 | 23 | 43 | 30.00 | 28 | 10 | 14 | 8 | 5 | 32 | 29.92 | 22 | 10 | 0.00 | 230 |
| 2015-01-10 | None | 1 | 8 | 23 | 62 | 30.50 | 24 | 10 | 20 | 49 | 30.34 | 21 | 10 | 12 | 3 | -2 | 35 | 30.15 | 17 | 10 | 0.00 | 263 |
| 2015-01-11 | None | 6 | 22 | 24 | 63 | 30.66 | 33 | 10 | 17 | 49 | 30.58 | 24 | 10 | 10 | 6 | -1 | 34 | 30.48 | 15 | 10 | 0.00 | 226 |
| 2015-01-12 | Rain | 8 | 36 | 23 | 100 | 30.45 | 38 | 10 | 17 | 72 | 30.23 | 36 | 7 | 9 | 28 | 17 | 44 | 30.11 | 33 | 1 | 0.20 | 242 |
| 2015-01-13 | None | 3 | 25 | 26 | 75 | 30.67 | 35 | 10 | 21 | 56 | 30.52 | 25 | 10 | 11 | 5 | -4 | 36 | 30.19 | 15 | 10 | 0.00 | 347 |
| 2015-01-14 | Snow | 8 | 21 | 16 | 88 | 30.61 | 25 | 10 | 13 | 67 | 30.40 | 20 | 10 | 9 | 10 | -4 | 46 | 30.18 | 14 | 6 | 0.00 | 323 |
| 2015-01-15 | Fog-Snow | 8 | 27 | 21 | 92 | 30.18 | 31 | 10 | 15 | 78 | 30.00 | 28 | 5 | 10 | 24 | 13 | 63 | 29.81 | 25 | 0 | 0.12 | 302 |
| 2015-01-16 | None | 2 | 21 | 39 | 71 | 30.11 | 38 | 10 | 29 | 52 | 29.82 | 27 | 10 | 16 | 10 | -4 | 33 | 29.68 | 15 | 9 | 0.00 | 263 |
| 2015-01-17 | None | 1 | 11 | 31 | 67 | 30.38 | 22 | 10 | 22 | 46 | 30.31 | 16 | 10 | 11 | -3 | -9 | 25 | 30.14 | 9 | 10 | 0.00 | 253 |
| 2015-01-18 | Rain | 8 | 45 | 33 | 93 | 30.26 | 51 | 10 | 26 | 80 | 29.93 | 36 | 10 | 10 | 35 | 13 | 67 | 29.55 | 20 | 5 | 0.15 | 164 |
| 2015-01-19 | None | 3 | 43 | 31 | 86 | 29.73 | 46 | 10 | 23 | 70 | 29.65 | 39 | 10 | 15 | 30 | 20 | 53 | 29.55 | 32 | 10 | 0.00 | 262 |
| 2015-01-02 | None | 3 | 17 | 32 | 53 | 30.45 | 41 | 10 | 26 | 45 | 30.13 | 36 | 10 | 13 | 15 | 11 | 37 | 29.95 | 31 | 10 | 0.00 | 260 |
| 2015-01-20 | None | 3 | 20 | 30 | 59 | 29.98 | 39 | 10 | 23 | 44 | 29.83 | 33 | 10 | 14 | 13 | 5 | 29 | 29.75 | 27 | 10 | 0.00 | 270 |
| 2015-01-21 | None | 5 | 25 | 20 | 75 | 30.21 | 34 | 10 | 14 | 57 | 30.15 | 28 | 10 | 7 | 14 | 5 | 38 | 30.00 | 22 | 10 | 0.00 | 357 |
| 2015-01-22 | Snow | 6 | 26 | 17 | 78 | 30.22 | 37 | 10 | 14 | 67 | 30.19 | 33 | 10 | 7 | 22 | 19 | 56 | 30.16 | 29 | 8 | 0.00 | 335 |
| 2015-01-23 | None | 2 | 20 | 22 | 68 | 30.28 | 37 | 10 | 16 | 54 | 30.15 | 31 | 10 | 10 | 15 | 9 | 39 | 29.93 | 24 | 10 | 0.00 | 259 |
| 2015-01-24 | Fog-Rain-Snow | 8 | 32 | 24 | 100 | 29.92 | 34 | 10 | 18 | 82 | 29.52 | 33 | 3 | 10 | 29 | 21 | 63 | 29.16 | 31 | 0 | 0.71 | 290 |
| 2015-01-25 | None | 4 | 28 | 33 | 78 | 30.04 | 38 | 10 | 25 | 55 | 29.66 | 29 | 10 | 14 | 17 | 4 | 32 | 29.31 | 19 | 10 | 0.00 | 284 |
| 2015-01-26 | Fog-Snow | 8 | 25 | 43 | 92 | 30.15 | 29 | 10 | 33 | 71 | 30.05 | 20 | 5 | 16 | 15 | -2 | 49 | 29.81 | 11 | 0 | 0.10 | 23 |
| 2015-01-27 | Fog-Snow | 8 | 14 | 45 | 92 | 29.76 | 19 | 4 | 32 | 85 | 29.59 | 17 | 1 | 22 | 11 | 7 | 77 | 29.49 | 14 | 0 | 0.95 | 335 |
| 2015-01-28 | Snow | 6 | 9 | 26 | 80 | 30.24 | 24 | 10 | 20 | 63 | 29.89 | 19 | 7 | 13 | 6 | 0 | 45 | 29.67 | 13 | 1 | 0.01 | 305 |
| 2015-01-29 | None | 3 | 22 | 17 | 75 | 30.32 | 32 | 10 | 13 | 57 | 30.23 | 21 | 10 | 4 | 10 | -2 | 39 | 30.06 | 10 | 7 | 0.00 | 245 |
| 2015-01-03 | Rain-Snow | 7 | 36 | 25 | 100 | 30.68 | 37 | 10 | 22 | 72 | 30.54 | 30 | 6 | 10 | 20 | 8 | 43 | 30.24 | 22 | 1 | 0.62 | 81 |
| 2015-01-30 | Snow | 8 | 31 | 44 | 92 | 30.06 | 34 | 10 | 32 | 78 | 29.82 | 27 | 6 | 12 | 26 | 7 | 63 | 29.71 | 19 | 1 | 0.06 | 223 |
| 2015-01-31 | Snow | 5 | 7 | 48 | 83 | 30.04 | 21 | 10 | 36 | 56 | 29.84 | 16 | 6 | 22 | 0 | -8 | 28 | 29.72 | 11 | 0 | 0.05 | 302 |
| 2015-01-04 | Fog-Rain | 8 | 50 | 26 | 100 | 30.16 | 52 | 10 | 17 | 95 | 29.81 | 44 | 4 | 8 | 41 | 34 | 89 | 29.57 | 35 | 0 | 0.57 | 260 |
| 2015-01-05 | None | 2 | 39 | 49 | 65 | 30.30 | 50 | 10 | 37 | 47 | 29.93 | 34 | 10 | 22 | 13 | -6 | 29 | 29.61 | 17 | 10 | 0.00 | 280 |
| 2015-01-06 | Snow | 6 | 11 | 28 | 80 | 30.37 | 18 | 10 | 22 | 59 | 30.22 | 17 | 7 | 9 | 5 | -5 | 37 | 30.00 | 15 | 1 | 0.02 | 262 |
| 2015-01-07 | Snow | 3 | 12 | 40 | 88 | 30.11 | 26 | 10 | 31 | 58 | 29.90 | 15 | 9 | 16 | 3 | -13 | 28 | 29.76 | 4 | 2 | 0.00 | 272 |
| 2015-01-08 | None | 1 | 7 | 32 | 56 | 30.34 | 19 | 10 | 25 | 49 | 30.25 | 9 | 10 | 14 | -8 | -18 | 41 | 30.13 | -1 | 10 | 0.00 | 259 |
| 2015-01-09 | Snow | 4 | 22 | 35 | 88 | 30.15 | 30 | 10 | 25 | 65 | 30.00 | 25 | 8 | 14 | 14 | 8 | 42 | 29.89 | 19 | 1 | 0.01 | 240 |
| 2015-02-01 | None | 4 | 11 | 29 | 67 | 30.16 | 30 | 10 | 22 | 48 | 30.12 | 21 | 10 | 12 | 2 | -6 | 29 | 30.04 | 12 | 10 | 0.00 | 289 |
| 2015-02-10 | Snow | 7 | 21 | 24 | 88 | 30.13 | 30 | 10 | 21 | 76 | 30.10 | 22 | 8 | 11 | 15 | 10 | 63 | 30.06 | 14 | 1 | 0.05 | 359 |
| 2015-02-11 | Snow | 7 | 17 | 31 | 77 | 30.14 | 25 | 10 | 23 | 69 | 30.07 | 20 | 7 | 12 | 12 | 6 | 61 | 29.94 | 14 | 1 | 0.01 | 354 |
| 2015-02-12 | Fog-Snow | 8 | 25 | 21 | 92 | 29.92 | 30 | 10 | 16 | 77 | 29.76 | 23 | 6 | 5 | 17 | 7 | 61 | 29.69 | 16 | 0 | 0.03 | 321 |
| 2015-02-13 | None | 2 | 11 | 37 | 77 | 30.11 | 22 | 10 | 28 | 55 | 29.95 | 15 | 10 | 17 | -5 | -10 | 33 | 29.74 | 7 | 8 | 0.00 | 296 |
| 2015-02-14 | Snow | 6 | 29 | 24 | 100 | 30.10 | 30 | 10 | 22 | 73 | 29.77 | 17 | 6 | 10 | 11 | -9 | 45 | 29.46 | 3 | 1 | 0.23 | 181 |
| 2015-02-15 | Fog-Snow | 6 | 18 | 51 | 92 | 29.82 | 20 | 10 | 33 | 71 | 29.49 | 9 | 3 | 21 | 9 | -13 | 50 | 29.30 | -2 | 0 | 0.39 | 320 |
| 2015-02-16 | Snow | 3 | -6 | 41 | 56 | 30.04 | 19 | 10 | 31 | 44 | 29.91 | 8 | 9 | 20 | -11 | -16 | 31 | 29.81 | -3 | 2 | 0.00 | 290 |
| 2015-02-17 | Snow | 7 | 18 | 18 | 84 | 30.03 | 23 | 10 | 14 | 63 | 29.93 | 17 | 7 | 8 | 6 | -7 | 42 | 29.85 | 10 | 1 | 0.02 | 338 |
| 2015-02-18 | Snow | 8 | 23 | 17 | 81 | 29.95 | 29 | 10 | 14 | 66 | 29.83 | 23 | 8 | 5 | 16 | 8 | 50 | 29.70 | 17 | 1 | 0.01 | 337 |
| 2015-02-19 | Snow | 6 | 24 | 40 | 92 | 29.73 | 30 | 10 | 30 | 71 | 29.61 | 20 | 6 | 14 | 14 | -5 | 50 | 29.53 | 10 | 1 | 0.06 | 263 |
| 2015-02-02 | Fog-Snow | 7 | 29 | 45 | 100 | 30.12 | 31 | 10 | 36 | 67 | 29.69 | 21 | 2 | 18 | 13 | -5 | 34 | 29.48 | 10 | 0 | 0.78 | 360 |
| 2015-02-20 | None | 2 | -4 | 35 | 55 | 30.43 | 20 | 10 | 28 | 45 | 30.04 | 13 | 10 | 19 | -6 | -10 | 34 | 29.74 | 5 | 10 | 0.00 | 273 |
| 2015-02-21 | Rain-Snow | 6 | 32 | 35 | 92 | 30.53 | 34 | 10 | 26 | 70 | 30.36 | 19 | 5 | 11 | 16 | -5 | 48 | 30.16 | 4 | 1 | 0.17 | 201 |
| 2015-02-22 | Rain-Snow | 8 | 33 | 16 | 100 | 30.17 | 39 | 10 | 13 | 85 | 30.14 | 34 | 8 | 5 | 29 | 24 | 70 | 30.10 | 28 | 1 | 0.11 | 245 |
| 2015-02-23 | None | 5 | 23 | 35 | 72 | 30.32 | 33 | 10 | 25 | 51 | 30.18 | 19 | 10 | 15 | 2 | -14 | 30 | 30.10 | 4 | 10 | 0.00 | 298 |
| 2015-02-24 | Snow | 6 | 15 | 24 | 80 | 30.33 | 19 | 10 | 20 | 60 | 30.18 | 11 | 10 | 9 | -4 | -15 | 39 | 29.88 | 2 | 5 | 0.00 | 221 |
| 2015-02-25 | Snow | 4 | 19 | 29 | 92 | 30.01 | 35 | 10 | 22 | 63 | 29.80 | 25 | 8 | 11 | 11 | 2 | 33 | 29.70 | 14 | 2 | 0.07 | 287 |
| 2015-02-26 | Snow | 8 | 16 | 21 | 84 | 30.12 | 22 | 10 | 18 | 65 | 30.05 | 20 | 8 | 9 | 8 | 2 | 45 | 29.97 | 17 | 1 | 0.02 | 351 |
| 2015-02-27 | None | 2 | 1 | 18 | 52 | 30.55 | 27 | 10 | 14 | 41 | 30.34 | 21 | 10 | 8 | -2 | -5 | 29 | 30.14 | 15 | 10 | 0.00 | 305 |
| 2015-02-28 | None | 0 | 4 | 20 | 58 | 30.75 | 31 | 10 | 15 | 43 | 30.69 | 22 | 10 | 9 | 1 | -1 | 27 | 30.56 | 12 | 10 | 0.00 | 273 |
| 2015-02-03 | Snow | 1 | 7 | 33 | 73 | 30.31 | 22 | 10 | 24 | 56 | 30.12 | 14 | 9 | 13 | 1 | -3 | 39 | 29.72 | 6 | 4 | 0.00 | 265 |
| 2015-02-04 | None | 7 | 30 | 26 | 75 | 30.32 | 38 | 10 | 20 | 64 | 30.16 | 26 | 10 | 9 | 17 | 3 | 53 | 29.94 | 14 | 10 | 0.00 | 209 |
| 2015-02-05 | Fog-Rain-Snow | 7 | 32 | 40 | 89 | 30.12 | 36 | 10 | 30 | 66 | 29.93 | 22 | 6 | 15 | 18 | -7 | 42 | 29.82 | 7 | 0 | 0.09 | 303 |
| 2015-02-06 | None | 3 | 6 | 29 | 60 | 30.17 | 21 | 10 | 21 | 53 | 30.10 | 13 | 10 | 12 | -1 | -8 | 46 | 30.04 | 5 | 10 | 0.00 | 263 |
| 2015-02-07 | Snow | 7 | 27 | 26 | 92 | 30.10 | 29 | 10 | 20 | 74 | 30.05 | 23 | 7 | 11 | 17 | 5 | 55 | 30.01 | 16 | 1 | 0.07 | 226 |
| 2015-02-08 | Snow | 8 | 27 | 28 | 100 | 30.08 | 29 | 7 | 22 | 90 | 30.05 | 21 | 2 | 14 | 20 | 10 | 80 | 30.01 | 13 | 1 | 0.37 | 8 |
| 2015-02-09 | Fog-Snow | 8 | 21 | 32 | 92 | 30.16 | 25 | 4 | 26 | 86 | 30.12 | 20 | 1 | 15 | 14 | 10 | 80 | 30.08 | 14 | 0 | 0.88 | 351 |
| 2015-03-01 | Snow | 7 | 27 | 23 | 92 | 30.71 | 30 | 10 | 20 | 66 | 30.46 | 21 | 6 | 6 | 16 | 2 | 40 | 30.12 | 12 | 1 | 0.17 | 206 |
| 2015-03-10 | Rain | 7 | 39 | 21 | 100 | 30.34 | 48 | 10 | 17 | 69 | 30.19 | 40 | 8 | 7 | 28 | 19 | 37 | 30.00 | 31 | 1 | 0.06 | 193 |
| 2015-03-11 | Fog-Rain | 5 | 40 | 33 | 100 | 29.99 | 57 | 10 | 25 | 65 | 29.86 | 47 | 7 | 12 | 34 | 25 | 30 | 29.79 | 37 | 0 | 0.01 | 245 |
| 2015-03-12 | None | 2 | 27 | 41 | 59 | 30.56 | 43 | 10 | 32 | 42 | 30.28 | 34 | 10 | 17 | 12 | 1 | 25 | 29.94 | 25 | 10 | 0.00 | 315 |
| 2015-03-13 | None | 4 | 24 | 23 | 69 | 30.64 | 40 | 10 | 18 | 45 | 30.53 | 32 | 10 | 11 | 7 | 1 | 21 | 30.37 | 24 | 10 | 0.00 | 269 |
| 2015-03-14 | Fog-Rain | 7 | 39 | 20 | 100 | 30.36 | 39 | 10 | 15 | 80 | 30.03 | 35 | 4 | 8 | 32 | 19 | 59 | 29.63 | 31 | 0 | 0.80 | 56 |
| 2015-03-15 | Fog-Rain-Snow | 8 | 34 | 40 | 100 | 29.88 | 41 | 10 | 33 | 85 | 29.65 | 34 | 5 | 14 | 30 | 19 | 69 | 29.58 | 27 | 0 | 0.27 | 329 |
| 2015-03-16 | None | 2 | 23 | 25 | 63 | 29.95 | 45 | 10 | 18 | 41 | 29.86 | 36 | 10 | 9 | 14 | 5 | 19 | 29.77 | 26 | 10 | 0.00 | 275 |
| 2015-03-17 | Rain-Snow | 5 | 41 | 51 | 100 | 29.74 | 51 | 10 | 38 | 66 | 29.58 | 40 | 8 | 14 | 27 | 4 | 31 | 29.38 | 28 | 2 | 0.14 | 250 |
| 2015-03-18 | None | 1 | 7 | 52 | 46 | 30.08 | 30 | 10 | 36 | 35 | 29.88 | 26 | 10 | 22 | 0 | -6 | 23 | 29.74 | 22 | 10 | 0.00 | 302 |
| 2015-03-19 | None | 1 | 0 | 41 | 39 | 30.34 | 34 | 10 | 30 | 30 | 30.19 | 27 | 10 | 16 | -2 | -4 | 21 | 30.09 | 19 | 10 | 0.00 | 306 |
| 2015-03-02 | Rain-Snow | 6 | 27 | 41 | 92 | 30.25 | 37 | 10 | 30 | 67 | 30.03 | 32 | 9 | 14 | 19 | 7 | 41 | 29.93 | 26 | 1 | 0.01 | 280 |
| 2015-03-20 | Snow | 7 | 26 | 26 | 100 | 30.40 | 32 | 10 | 12 | 67 | 30.32 | 28 | 7 | 4 | 13 | 0 | 33 | 30.19 | 23 | 1 | 0.05 | 150 |
| 2015-03-21 | Snow | 7 | 33 | 31 | 96 | 30.17 | 41 | 10 | 22 | 78 | 29.99 | 35 | 5 | 7 | 29 | 25 | 59 | 29.76 | 28 | 1 | 0.09 | 57 |
| 2015-03-22 | None | 1 | 23 | 48 | 54 | 30.11 | 39 | 10 | 33 | 38 | 29.93 | 30 | 10 | 18 | 5 | -5 | 22 | 29.76 | 21 | 10 | 0.00 | 296 |
| 2015-03-23 | None | 0 | 6 | 31 | 49 | 30.23 | 33 | 10 | 24 | 38 | 30.13 | 26 | 10 | 15 | 0 | -6 | 26 | 30.08 | 18 | 10 | 0.00 | 290 |
| 2015-03-24 | None | 4 | 24 | 16 | 72 | 30.35 | 35 | 10 | 13 | 59 | 30.31 | 28 | 10 | 8 | 15 | 6 | 46 | 30.24 | 20 | 10 | 0.00 | 214 |
| 2015-03-25 | Rain | 4 | 34 | 28 | 85 | 30.42 | 49 | 10 | 22 | 60 | 30.33 | 39 | 10 | 9 | 22 | 16 | 34 | 30.17 | 28 | 10 | 0.04 | 181 |
| 2015-03-26 | Fog-Rain | 8 | 52 | 23 | 100 | 30.16 | 56 | 10 | 16 | 86 | 29.82 | 47 | 5 | 9 | 45 | 35 | 71 | 29.64 | 38 | 0 | 0.80 | 223 |
| 2015-03-27 | Rain | 8 | 43 | 15 | 96 | 29.76 | 44 | 10 | 13 | 88 | 29.71 | 41 | 9 | 5 | 38 | 35 | 79 | 29.65 | 37 | 3 | 0.21 | 9 |
| 2015-03-28 | Fog-Rain-Snow | 8 | 36 | 30 | 96 | 30.02 | 40 | 10 | 24 | 78 | 29.81 | 35 | 4 | 13 | 30 | 19 | 59 | 29.71 | 30 | 0 | 0.12 | 355 |
| 2015-03-29 | None | 3 | 19 | 22 | 59 | 30.22 | 42 | 10 | 17 | 40 | 30.13 | 34 | 10 | 9 | 11 | 3 | 20 | 30.04 | 26 | 10 | 0.00 | 272 |
| 2015-03-03 | Rain-Snow | 6 | 31 | 32 | 92 | 30.41 | 33 | 10 | 24 | 60 | 30.17 | 27 | 6 | 10 | 14 | 1 | 28 | 29.80 | 20 | 1 | 0.26 | 213 |
| 2015-03-30 | Rain-Snow | 6 | 33 | 35 | 69 | 30.08 | 45 | 10 | 29 | 59 | 29.84 | 38 | 9 | 13 | 27 | 17 | 48 | 29.72 | 30 | 2 | 0.00 | 214 |
| 2015-03-31 | None | 3 | 28 | 29 | 70 | 29.79 | 50 | 10 | 20 | 51 | 29.73 | 44 | 10 | 12 | 24 | 18 | 31 | 29.69 | 37 | 10 | 0.00 | 279 |
| 2015-03-04 | Rain | 8 | 36 | 30 | 92 | 29.87 | 43 | 10 | 21 | 75 | 29.75 | 38 | 10 | 11 | 32 | 29 | 57 | 29.64 | 33 | 2 | 0.02 | 236 |
| 2015-03-05 | Snow | 8 | 28 | 28 | 76 | 30.32 | 39 | 10 | 20 | 56 | 30.07 | 29 | 9 | 12 | 11 | -4 | 35 | 29.85 | 18 | 2 | 0.00 | 316 |
| 2015-03-06 | None | 2 | 11 | 29 | 62 | 30.51 | 24 | 10 | 23 | 48 | 30.42 | 17 | 10 | 10 | -1 | -8 | 34 | 30.29 | 9 | 10 | 0.00 | 277 |
| 2015-03-07 | None | 3 | 21 | 25 | 67 | 30.29 | 38 | 10 | 21 | 48 | 30.11 | 28 | 10 | 11 | 12 | 6 | 29 | 29.95 | 17 | 10 | 0.00 | 226 |
| 2015-03-08 | Snow | 4 | 27 | 32 | 78 | 30.12 | 42 | 10 | 25 | 58 | 30.03 | 33 | 10 | 9 | 20 | 13 | 38 | 29.94 | 24 | 7 | 0.00 | 247 |
| 2015-03-09 | None | 3 | 22 | 37 | 81 | 30.24 | 48 | 10 | 25 | 56 | 30.11 | 37 | 10 | 10 | 19 | 16 | 31 | 30.05 | 26 | 10 | 0.00 | 242 |
| 2015-04-01 | None | 1 | 16 | 28 | 40 | 30.17 | 47 | 10 | 21 | 29 | 29.99 | 39 | 10 | 10 | 7 | 1 | 17 | 29.79 | 30 | 10 | 0.00 | 332 |
| 2015-04-10 | Rain | 8 | 52 | 25 | 100 | 30.30 | 55 | 10 | 20 | 95 | 29.94 | 46 | 4 | 8 | 42 | 36 | 89 | 29.65 | 36 | 0 | 0.09 | 114 |
| 2015-04-11 | None | 1 | 50 | 39 | 89 | 30.10 | 57 | 10 | 30 | 61 | 29.86 | 50 | 10 | 17 | 32 | 26 | 32 | 29.72 | 42 | 10 | 0.00 | 274 |
| 2015-04-12 | None | 1 | 35 | 22 | 59 | 30.29 | 68 | 10 | 16 | 39 | 30.21 | 54 | 10 | 9 | 28 | 25 | 19 | 30.12 | 39 | 10 | 0.00 | 258 |
| 2015-04-13 | None | 3 | 42 | 29 | 66 | 30.36 | 69 | 10 | 24 | 43 | 30.26 | 55 | 10 | 12 | 34 | 27 | 20 | 30.14 | 41 | 10 | 0.00 | 194 |
| 2015-04-14 | Rain | 6 | 52 | 35 | 80 | 30.13 | 65 | 10 | 25 | 54 | 30.08 | 59 | 10 | 11 | 39 | 30 | 28 | 30.03 | 52 | 10 | 0.01 | 245 |
| 2015-04-15 | None | 1 | 31 | 35 | 39 | 30.38 | 67 | 10 | 25 | 28 | 30.15 | 59 | 10 | 12 | 23 | 16 | 16 | 30.06 | 50 | 10 | 0.00 | 325 |
| 2015-04-16 | None | 3 | 32 | 26 | 67 | 30.51 | 60 | 10 | 23 | 46 | 30.39 | 51 | 10 | 10 | 23 | 16 | 24 | 30.26 | 41 | 10 | 0.00 | 130 |
| 2015-04-17 | Rain | 6 | 54 | 28 | 89 | 30.24 | 65 | 10 | 22 | 70 | 29.99 | 56 | 10 | 13 | 47 | 30 | 50 | 29.86 | 47 | 7 | 0.06 | 237 |
| 2015-04-18 | None | 1 | 47 | 35 | 89 | 30.09 | 60 | 10 | 28 | 68 | 29.94 | 52 | 10 | 9 | 42 | 38 | 47 | 29.83 | 43 | 10 | 0.00 | 14 |
| 2015-04-19 | None | 3 | 38 | 24 | 76 | 30.29 | 50 | 10 | 18 | 66 | 30.23 | 46 | 10 | 11 | 34 | 32 | 56 | 30.09 | 41 | 10 | 0.00 | 75 |
| 2015-04-02 | None | 5 | 37 | 37 | 61 | 30.25 | 61 | 10 | 29 | 44 | 30.10 | 46 | 10 | 13 | 20 | 8 | 27 | 29.88 | 30 | 10 | 0.00 | 223 |
| 2015-04-20 | Rain | 8 | 51 | 32 | 100 | 30.25 | 51 | 10 | 25 | 90 | 30.02 | 46 | 6 | 14 | 42 | 35 | 79 | 29.73 | 41 | 1 | 0.61 | 107 |
| 2015-04-21 | Fog-Rain-Thunderstorm | 6 | 57 | 94 | 100 | 29.75 | 65 | 10 | 20 | 71 | 29.60 | 56 | 5 | 10 | 49 | 36 | 42 | 29.53 | 46 | 0 | 0.54 | 184 |
| 2015-04-22 | Rain | 3 | 46 | 41 | 89 | 29.80 | 67 | 10 | 35 | 59 | 29.69 | 55 | 10 | 15 | 39 | 32 | 28 | 29.53 | 43 | 10 | 0.00 | 186 |
| 2015-04-23 | None | 5 | 40 | 33 | 71 | 29.70 | 51 | 10 | 25 | 49 | 29.62 | 45 | 10 | 16 | 27 | 18 | 27 | 29.54 | 38 | 10 | 0.00 | 272 |
| 2015-04-24 | Snow | 5 | 28 | 36 | 64 | 29.79 | 50 | 10 | 23 | 49 | 29.73 | 44 | 10 | 16 | 24 | 20 | 34 | 29.70 | 37 | 3 | 0.00 | 292 |
| 2015-04-25 | None | 3 | 33 | 29 | 60 | 29.79 | 56 | 10 | 18 | 46 | 29.74 | 46 | 10 | 11 | 26 | 21 | 32 | 29.68 | 36 | 10 | 0.00 | 315 |
| 2015-04-26 | None | 7 | 39 | 20 | 71 | 29.72 | 56 | 10 | 14 | 53 | 29.66 | 50 | 10 | 6 | 33 | 28 | 35 | 29.62 | 43 | 10 | 0.00 | 344 |
| 2015-04-27 | Rain | 7 | 44 | 29 | 63 | 29.63 | 57 | 10 | 22 | 52 | 29.59 | 51 | 10 | 12 | 37 | 32 | 40 | 29.53 | 45 | 6 | 0.10 | 324 |
| 2015-04-28 | Rain | 5 | 42 | 35 | 76 | 29.78 | 64 | 10 | 26 | 51 | 29.68 | 53 | 10 | 14 | 35 | 29 | 26 | 29.62 | 42 | 4 | 0.07 | 8 |
| 2015-04-29 | None | 5 | 41 | 18 | 77 | 29.80 | 54 | 10 | 16 | 64 | 29.70 | 51 | 10 | 9 | 38 | 36 | 50 | 29.59 | 48 | 10 | 0.00 | 91 |
| 2015-04-03 | Rain | 8 | 50 | 31 | 100 | 29.86 | 59 | 10 | 24 | 80 | 29.76 | 52 | 9 | 12 | 45 | 39 | 59 | 29.65 | 45 | 3 | 0.03 | 221 |
| 2015-04-30 | None | 6 | 42 | 18 | 89 | 29.98 | 55 | 10 | 15 | 72 | 29.88 | 50 | 10 | 9 | 40 | 37 | 55 | 29.79 | 44 | 10 | 0.00 | 89 |
| 2015-04-04 | Fog-Rain-Thunderstorm | 6 | 48 | 49 | 100 | 30.08 | 52 | 10 | 37 | 66 | 29.63 | 44 | 6 | 16 | 36 | 13 | 31 | 29.40 | 36 | 0 | 0.39 | 269 |
| 2015-04-05 | None | 4 | 30 | 36 | 76 | 30.26 | 49 | 10 | 28 | 49 | 30.13 | 41 | 10 | 15 | 21 | 10 | 21 | 30.09 | 32 | 10 | 0.00 | 243 |
| 2015-04-06 | None | 7 | 37 | 21 | 92 | 30.40 | 42 | 10 | 17 | 74 | 30.30 | 39 | 10 | 9 | 31 | 26 | 55 | 30.22 | 36 | 10 | 0.00 | 70 |
| 2015-04-07 | Rain | 8 | 37 | 18 | 92 | 30.40 | 42 | 10 | 15 | 84 | 30.30 | 39 | 9 | 8 | 36 | 34 | 76 | 30.21 | 36 | 7 | 0.03 | 29 |
| 2015-04-08 | Rain-Snow | 6 | 34 | 30 | 92 | 30.51 | 42 | 10 | 24 | 73 | 30.43 | 38 | 8 | 17 | 31 | 25 | 54 | 30.37 | 34 | 4 | 0.26 | 52 |
| 2015-04-09 | Rain | 8 | 36 | 30 | 100 | 30.42 | 37 | 6 | 25 | 95 | 30.37 | 35 | 2 | 17 | 34 | 32 | 89 | 30.30 | 33 | 1 | 0.09 | 58 |
| 2015-05-01 | None | 6 | 41 | 22 | 92 | 30.02 | 49 | 10 | 17 | 82 | 30.00 | 44 | 10 | 8 | 39 | 37 | 71 | 29.97 | 39 | 10 | 0.00 | 85 |
| 2015-05-10 | None | 6 | 64 | 29 | 100 | 30.22 | 89 | 10 | 22 | 67 | 30.12 | 74 | 10 | 14 | 61 | 55 | 34 | 30.02 | 59 | 7 | 0.00 | 221 |
| 2015-05-11 | None | 6 | 65 | 24 | 93 | 30.14 | 80 | 10 | 21 | 78 | 30.10 | 65 | 9 | 10 | 55 | 48 | 62 | 30.06 | 50 | 5 | 0.00 | 68 |
| 2015-05-12 | Rain | 7 | 61 | 33 | 100 | 30.04 | 87 | 10 | 25 | 66 | 29.82 | 68 | 6 | 9 | 52 | 48 | 31 | 29.62 | 48 | 0 | 0.02 | 75 |
| 2015-05-13 | None | 1 | 43 | 35 | 59 | 30.22 | 69 | 10 | 28 | 44 | 29.97 | 61 | 10 | 14 | 37 | 31 | 29 | 29.77 | 53 | 10 | 0.00 | 305 |
| 2015-05-14 | None | 1 | 43 | 24 | 54 | 30.34 | 69 | 10 | 22 | 36 | 30.28 | 59 | 10 | 9 | 34 | 23 | 17 | 30.24 | 49 | 10 | 0.00 | 281 |
| 2015-05-15 | None | 5 | 49 | 18 | 64 | 30.31 | 67 | 10 | 15 | 47 | 30.25 | 58 | 10 | 6 | 39 | 32 | 29 | 30.20 | 48 | 10 | 0.00 | 134 |
| 2015-05-16 | None | 8 | 57 | 21 | 90 | 30.21 | 71 | 10 | 17 | 67 | 30.17 | 63 | 10 | 8 | 50 | 37 | 44 | 30.12 | 55 | 10 | 0.00 | 194 |
| 2015-05-17 | None | 3 | 59 | 18 | 100 | 30.22 | 67 | 10 | 15 | 89 | 30.13 | 60 | 8 | 8 | 56 | 52 | 78 | 30.09 | 52 | 0 | 0.00 | 97 |
| 2015-05-18 | Fog | 6 | 52 | NA | 100 | 30.30 | 58 | 10 | 16 | 79 | 30.23 | 54 | 8 | 10 | 48 | 43 | 57 | 30.12 | 49 | 0 | 0.00 | 72 |
| 2015-05-19 | Rain | 8 | 63 | 23 | 100 | 30.09 | 65 | 10 | 16 | 92 | 29.90 | 59 | 8 | 10 | 56 | 48 | 83 | 29.72 | 52 | 2 | 0.27 | 203 |
| 2015-05-02 | None | 4 | 43 | 16 | 92 | 30.04 | 50 | 10 | 13 | 82 | 30.00 | 45 | 10 | 7 | 40 | 37 | 71 | 29.96 | 39 | 10 | 0.00 | 103 |
| 2015-05-20 | None | 4 | 63 | 35 | 93 | 29.92 | 66 | 10 | 26 | 65 | 29.78 | 59 | 10 | 14 | 41 | 30 | 36 | 29.70 | 51 | 7 | 0.00 | 288 |
| 2015-05-21 | None | 4 | 41 | 23 | 61 | 29.98 | 67 | 10 | 17 | 44 | 29.91 | 56 | 10 | 10 | 36 | 30 | 26 | 29.85 | 45 | 10 | 0.00 | 211 |
| 2015-05-22 | Rain | 4 | 44 | 37 | 64 | 30.06 | 76 | 10 | 26 | 40 | 29.86 | 64 | 10 | 13 | 34 | 24 | 16 | 29.78 | 52 | 10 | 0.00 | 264 |
| 2015-05-23 | None | 0 | 32 | 32 | 50 | 30.33 | 65 | 10 | 22 | 34 | 30.26 | 55 | 10 | 13 | 23 | 18 | 18 | 30.07 | 44 | 10 | 0.00 | 285 |
| 2015-05-24 | None | 3 | 48 | 30 | 59 | 30.29 | 83 | 10 | 23 | 40 | 30.22 | 67 | 10 | 16 | 39 | 33 | 20 | 30.14 | 51 | 10 | 0.00 | 237 |
| 2015-05-25 | Rain | 6 | 57 | 26 | 73 | 30.24 | 81 | 10 | 20 | 54 | 30.20 | 70 | 10 | 11 | 52 | 49 | 35 | 30.15 | 58 | 10 | 0.00 | 209 |
| 2015-05-26 | None | 6 | 62 | 28 | 73 | 30.16 | 87 | 10 | 23 | 59 | 30.12 | 76 | 10 | 16 | 58 | 53 | 44 | 30.09 | 64 | 10 | 0.00 | 217 |
| 2015-05-27 | None | 4 | 66 | 32 | 87 | 30.16 | 85 | 10 | 26 | 71 | 30.12 | 75 | 10 | 16 | 63 | 59 | 55 | 30.06 | 65 | 10 | 0.00 | 207 |
| 2015-05-28 | Rain | 6 | 67 | 29 | 87 | 30.21 | 86 | 10 | 23 | 69 | 30.12 | 75 | 10 | 13 | 62 | 55 | 51 | 30.04 | 64 | 10 | 0.00 | 216 |
| 2015-05-29 | Fog | 4 | 61 | 20 | 100 | 30.31 | 72 | 10 | 17 | 80 | 30.27 | 64 | 8 | 8 | 57 | 54 | 59 | 30.22 | 55 | 0 | 0.00 | 48 |
| 2015-05-03 | None | 4 | 48 | 21 | 76 | 30.15 | 67 | 10 | 17 | 61 | 30.06 | 56 | 10 | 9 | 42 | 39 | 45 | 30.01 | 45 | 10 | 0.00 | 176 |
| 2015-05-30 | None | 2 | 63 | 33 | 93 | 30.22 | 88 | 10 | 26 | 66 | 30.12 | 73 | 10 | 15 | 60 | 56 | 39 | 30.03 | 58 | 10 | 0.00 | 205 |
| 2015-05-31 | Rain | 7 | 69 | 36 | 100 | 30.28 | 77 | 10 | 31 | 85 | 30.14 | 63 | 8 | 14 | 55 | 46 | 69 | 30.02 | 48 | 1 | 0.91 | 28 |
| 2015-05-04 | None | 2 | 48 | 37 | 80 | 30.19 | 84 | 10 | 30 | 52 | 30.13 | 67 | 10 | 13 | 43 | 37 | 23 | 30.06 | 49 | 10 | 0.00 | 206 |
| 2015-05-05 | Rain | 5 | 59 | 25 | 93 | 30.22 | 70 | 10 | 21 | 66 | 30.16 | 62 | 10 | 10 | 50 | 41 | 39 | 30.07 | 54 | 7 | 0.02 | 183 |
| 2015-05-06 | None | 3 | 52 | 25 | 89 | 30.31 | 73 | 10 | 20 | 59 | 30.24 | 63 | 10 | 9 | 40 | 31 | 29 | 30.16 | 52 | 10 | 0.00 | 122 |
| 2015-05-07 | None | 1 | 45 | 28 | 47 | 30.21 | 79 | 10 | 22 | 34 | 30.14 | 66 | 10 | 11 | 38 | 30 | 21 | 30.05 | 53 | 10 | 0.00 | 205 |
| 2015-05-08 | None | 4 | 46 | 25 | 86 | 30.32 | 71 | 10 | 22 | 61 | 30.20 | 59 | 10 | 12 | 43 | 40 | 35 | 30.09 | 46 | 9 | 0.00 | 35 |
| 2015-05-09 | None | 7 | 60 | 23 | 97 | 30.37 | 71 | 10 | 18 | 82 | 30.30 | 59 | 9 | 8 | 50 | 43 | 66 | 30.21 | 46 | 3 | 0.00 | 117 |
| 2015-06-01 | Rain | 8 | 48 | 26 | 100 | 30.27 | 49 | 6 | 21 | 97 | 30.25 | 48 | 3 | 14 | 47 | 46 | 93 | 30.23 | 47 | 2 | 0.38 | 43 |
| 2015-06-10 | None | 3 | 59 | 26 | 78 | 29.85 | 82 | 10 | 20 | 54 | 29.80 | 72 | 10 | 11 | 54 | 47 | 30 | 29.71 | 62 | 10 | 0.00 | 245 |
| 2015-06-11 | None | 7 | 66 | 29 | 78 | 29.91 | 88 | 10 | 22 | 56 | 29.82 | 76 | 9 | 14 | 58 | 48 | 33 | 29.78 | 64 | 7 | 0.00 | 248 |
| 2015-06-12 | None | 6 | 67 | 24 | 79 | 30.01 | 79 | 10 | 18 | 60 | 29.92 | 72 | 10 | 9 | 55 | 49 | 41 | 29.77 | 65 | 10 | 0.00 | 202 |
| 2015-06-13 | None | 6 | 68 | 26 | 84 | 29.99 | 85 | 10 | 21 | 56 | 29.87 | 75 | 10 | 9 | 59 | 47 | 27 | 29.72 | 64 | 10 | 0.00 | 2 |
| 2015-06-14 | None | 5 | 56 | 21 | 73 | 30.12 | 74 | 10 | 17 | 56 | 30.06 | 68 | 10 | 10 | 51 | 45 | 38 | 29.99 | 62 | 10 | 0.00 | 67 |
| 2015-06-15 | Rain | 8 | 56 | 23 | 100 | 30.14 | 63 | 10 | 21 | 84 | 30.09 | 59 | 5 | 9 | 53 | 51 | 67 | 30.04 | 54 | 1 | 0.40 | 113 |
| 2015-06-16 | Rain | 7 | 66 | 18 | 100 | 30.01 | 71 | 10 | 13 | 91 | 29.88 | 64 | 6 | 5 | 59 | 56 | 81 | 29.78 | 56 | 0 | 0.00 | 87 |
| 2015-06-17 | None | 5 | 56 | 28 | 73 | 30.18 | 69 | 10 | 23 | 55 | 30.14 | 64 | 10 | 10 | 46 | 38 | 37 | 30.08 | 59 | 10 | 0.00 | 111 |
| 2015-06-18 | None | 5 | 54 | 23 | 72 | 30.14 | 76 | 10 | 17 | 59 | 30.04 | 67 | 10 | 10 | 49 | 45 | 46 | 29.93 | 57 | 10 | 0.00 | 189 |
| 2015-06-19 | None | 6 | 63 | 26 | 84 | 30.05 | 86 | 10 | 20 | 64 | 29.90 | 75 | 10 | 10 | 57 | 47 | 43 | 29.85 | 63 | 10 | 0.00 | 272 |
| 2015-06-02 | Rain | 8 | 46 | 26 | 100 | 30.22 | 49 | 10 | 20 | 93 | 30.19 | 48 | 7 | 11 | 45 | 44 | 86 | 30.17 | 46 | 2 | 0.74 | 33 |
| 2015-06-20 | None | 5 | 58 | 23 | 78 | 30.15 | 75 | 10 | 18 | 64 | 30.10 | 67 | 10 | 9 | 51 | 46 | 49 | 30.03 | 58 | 10 | 0.04 | 76 |
| 2015-06-21 | Rain | 8 | 72 | 22 | 100 | 29.96 | 76 | 10 | 17 | 91 | 29.74 | 68 | 5 | 6 | 65 | 59 | 82 | 29.63 | 60 | 0 | 1.72 | 92 |
| 2015-06-22 | Fog | 6 | 65 | 15 | 100 | 29.99 | 77 | 10 | 13 | 84 | 29.85 | 69 | 5 | 6 | 62 | 60 | 68 | 29.76 | 61 | 0 | 0.00 | 89 |
| 2015-06-23 | Rain | 6 | 72 | 33 | 100 | 29.96 | 88 | 10 | 28 | 80 | 29.81 | 74 | 10 | 12 | 66 | 59 | 60 | 29.68 | 60 | 9 | 0.01 | 201 |
| 2015-06-24 | None | 2 | 60 | 28 | 73 | 29.97 | 84 | 10 | 20 | 52 | 29.90 | 76 | 10 | 11 | 54 | 46 | 30 | 29.78 | 67 | 10 | 0.00 | 298 |
| 2015-06-25 | None | 4 | 61 | 21 | 76 | 30.03 | 81 | 10 | 15 | 56 | 29.98 | 73 | 10 | 7 | 55 | 52 | 36 | 29.93 | 64 | 10 | 0.00 | 292 |
| 2015-06-26 | Rain | 5 | 58 | 20 | 84 | 30.09 | 72 | 10 | 16 | 68 | 30.01 | 66 | 10 | 8 | 53 | 46 | 52 | 29.94 | 59 | 10 | 0.00 | 41 |
| 2015-06-27 | Rain | 6 | 58 | 0 | 93 | 30.19 | 68 | 10 | 38 | 76 | 30.14 | 63 | 10 | 8 | 55 | 48 | 58 | 30.09 | 57 | 7 | 0.20 | 108 |
| 2015-06-28 | Rain | 8 | 59 | 36 | 100 | 30.07 | 59 | 7 | 29 | 94 | 29.80 | 56 | 3 | 18 | 56 | 51 | 87 | 29.69 | 52 | 1 | 1.43 | 39 |
| 2015-06-29 | None | 7 | 61 | 21 | 93 | 29.94 | 75 | 10 | 15 | 80 | 29.84 | 64 | 9 | 7 | 56 | 50 | 66 | 29.78 | 53 | 2 | 0.00 | 216 |
| 2015-06-03 | None | 7 | 48 | NA | 93 | 30.31 | 56 | 10 | 14 | 82 | 30.24 | 52 | 10 | 7 | 45 | 43 | 71 | 30.19 | 47 | 10 | 0.00 | 90 |
| 2015-06-30 | None | 4 | 62 | 17 | 97 | 30.01 | 75 | 10 | 14 | 81 | 29.97 | 68 | 10 | 7 | 60 | 57 | 64 | 29.94 | 60 | 10 | 0.00 | 155 |
| 2015-06-04 | None | 5 | 46 | 21 | 86 | 30.35 | 58 | 10 | 16 | 74 | 30.30 | 54 | 10 | 6 | 45 | 42 | 61 | 30.24 | 49 | 10 | 0.00 | 113 |
| 2015-06-05 | None | 5 | 51 | 22 | 93 | 30.24 | 59 | 10 | 20 | 83 | 30.09 | 55 | 10 | 8 | 48 | 45 | 72 | 29.93 | 50 | 10 | 0.00 | 106 |
| 2015-06-06 | Rain | 5 | 55 | 28 | 100 | 30.08 | 67 | 10 | 20 | 73 | 29.94 | 60 | 10 | 7 | 51 | 39 | 46 | 29.85 | 52 | 2 | 0.09 | 54 |
| 2015-06-07 | None | 3 | 47 | 23 | 60 | 30.23 | 67 | 10 | 21 | 47 | 30.16 | 60 | 10 | 11 | 40 | 35 | 34 | 30.09 | 53 | 10 | 0.00 | 76 |
| 2015-06-08 | Rain | 6 | 58 | 40 | 89 | 30.13 | 76 | 10 | 29 | 71 | 29.95 | 65 | 10 | 17 | 53 | 42 | 52 | 29.82 | 53 | 10 | 0.00 | 200 |
| 2015-06-09 | Rain | 6 | 65 | 26 | 93 | 29.79 | 78 | 10 | 23 | 81 | 29.70 | 71 | 10 | 13 | 63 | 59 | 69 | 29.63 | 64 | 9 | 0.00 | 199 |
| 2015-07-01 | Rain-Thunderstorm | 6 | 68 | 28 | 100 | 29.93 | 82 | 10 | 22 | 78 | 29.78 | 72 | 8 | 10 | 64 | 60 | 55 | 29.68 | 62 | 0 | 0.50 | 164 |
| 2015-07-10 | Rain | 6 | 66 | 17 | 100 | 29.96 | 77 | 10 | 15 | 74 | 29.90 | 69 | 7 | 8 | 61 | 55 | 47 | 29.83 | 60 | 2 | 1.12 | 85 |
| 2015-07-11 | None | 1 | 61 | 17 | 61 | 30.04 | 83 | 10 | 13 | 49 | 30.01 | 76 | 10 | 8 | 57 | 54 | 37 | 29.96 | 68 | 10 | 0.00 | 282 |
| 2015-07-12 | None | 4 | 67 | 23 | 67 | 30.00 | 89 | 10 | 15 | 54 | 29.95 | 81 | 10 | 9 | 61 | 57 | 40 | 29.90 | 72 | 10 | 0.00 | 249 |
| 2015-07-13 | None | 6 | 67 | 17 | 93 | 29.95 | 77 | 10 | 15 | 81 | 29.91 | 72 | 10 | 6 | 65 | 61 | 68 | 29.86 | 67 | 7 | 0.00 | 68 |
| 2015-07-14 | Rain | 5 | 70 | 24 | 93 | 29.85 | 82 | 10 | 21 | 72 | 29.71 | 74 | 10 | 8 | 67 | 60 | 51 | 29.62 | 65 | 3 | 0.03 | 144 |
| 2015-07-15 | Rain | 7 | 72 | 26 | 100 | 29.89 | 82 | 10 | 20 | 87 | 29.67 | 75 | 10 | 7 | 68 | 57 | 73 | 29.58 | 67 | 7 | 0.00 | 99 |
| 2015-07-16 | None | 3 | 55 | 25 | 78 | 30.07 | 68 | 10 | 18 | 65 | 30.02 | 64 | 10 | 11 | 51 | 48 | 52 | 29.91 | 59 | 10 | 0.00 | 59 |
| 2015-07-17 | None | 5 | 61 | 25 | 84 | 30.12 | 75 | 10 | 17 | 72 | 30.08 | 68 | 10 | 9 | 58 | 53 | 60 | 30.03 | 60 | 10 | 0.00 | 151 |
| 2015-07-18 | Rain | 7 | 68 | 28 | 93 | 30.04 | 78 | 10 | 21 | 81 | 29.95 | 71 | 10 | 11 | 65 | 61 | 69 | 29.86 | 64 | 2 | 0.14 | 200 |
| 2015-07-19 | Rain | 6 | 74 | 25 | 93 | 29.87 | 90 | 10 | 20 | 73 | 29.80 | 81 | 10 | 9 | 71 | 68 | 52 | 29.70 | 71 | 7 | 0.00 | 206 |
| 2015-07-02 | None | 4 | 60 | 23 | 78 | 29.89 | 80 | 10 | 16 | 60 | 29.86 | 72 | 10 | 9 | 56 | 54 | 42 | 29.81 | 64 | 10 | 0.00 | 265 |
| 2015-07-20 | None | 4 | 73 | 28 | 93 | 29.71 | 92 | 10 | 20 | 62 | 29.66 | 81 | 10 | 9 | 66 | 52 | 30 | 29.63 | 70 | 7 | 0.00 | 272 |
| 2015-07-21 | None | 5 | 68 | 24 | 79 | 29.66 | 81 | 10 | 16 | 66 | 29.61 | 76 | 10 | 7 | 63 | 59 | 52 | 29.55 | 70 | 10 | 0.00 | 256 |
| 2015-07-22 | None | 3 | 66 | 29 | 84 | 29.81 | 84 | 10 | 22 | 58 | 29.67 | 77 | 10 | 12 | 55 | 48 | 31 | 29.57 | 69 | 10 | 0.00 | 309 |
| 2015-07-23 | None | 4 | 58 | 21 | 68 | 29.88 | 82 | 10 | 14 | 52 | 29.84 | 75 | 10 | 7 | 54 | 52 | 36 | 29.82 | 67 | 10 | 0.00 | 303 |
| 2015-07-24 | Rain | 4 | 61 | 28 | 81 | 29.94 | 81 | 10 | 20 | 60 | 29.90 | 74 | 10 | 9 | 56 | 51 | 39 | 29.88 | 66 | 7 | 0.01 | 320 |
| 2015-07-25 | None | 5 | 61 | 20 | 93 | 30.06 | 69 | 10 | 16 | 81 | 30.02 | 66 | 10 | 9 | 59 | 57 | 68 | 29.94 | 62 | 10 | 0.00 | 50 |
| 2015-07-26 | Rain | 7 | 68 | 22 | 93 | 30.05 | 79 | 10 | 14 | 79 | 30.01 | 71 | 10 | 8 | 64 | 60 | 64 | 29.96 | 63 | 10 | 0.00 | 181 |
| 2015-07-27 | Rain | 5 | 69 | 24 | 93 | 30.03 | 86 | 10 | 18 | 74 | 30.00 | 77 | 10 | 8 | 67 | 65 | 55 | 29.97 | 68 | 10 | 0.06 | 200 |
| 2015-07-28 | None | 3 | 70 | 18 | 97 | 29.99 | 86 | 10 | 16 | 80 | 29.96 | 78 | 10 | 8 | 69 | 66 | 63 | 29.93 | 70 | 10 | 0.00 | 181 |
| 2015-07-29 | None | 3 | 69 | 20 | 90 | 29.96 | 92 | 10 | 16 | 66 | 29.92 | 82 | 10 | 7 | 67 | 63 | 41 | 29.87 | 71 | 10 | 0.00 | 190 |
| 2015-07-03 | None | 2 | 56 | 17 | 73 | 30.00 | 76 | 10 | 15 | 56 | 29.94 | 70 | 10 | 9 | 53 | 49 | 38 | 29.87 | 63 | 10 | 0.00 | 63 |
| 2015-07-30 | Rain | 5 | 73 | 33 | 93 | 29.89 | 91 | 10 | 25 | 73 | 29.82 | 83 | 10 | 14 | 70 | 67 | 52 | 29.75 | 74 | 7 | 0.02 | 223 |
| 2015-07-31 | None | 2 | 71 | 31 | 93 | 29.81 | 89 | 10 | 23 | 61 | 29.78 | 81 | 10 | 11 | 59 | 52 | 29 | 29.75 | 73 | 10 | 0.00 | 263 |
| 2015-07-04 | None | 6 | 62 | 12 | 87 | 30.01 | 72 | 10 | 10 | 75 | 29.99 | 67 | 10 | 4 | 58 | 55 | 63 | 29.95 | 62 | 10 | 0.00 | 126 |
| 2015-07-05 | None | 1 | 61 | 22 | 90 | 30.13 | 83 | 10 | 13 | 67 | 30.05 | 72 | 9 | 8 | 59 | 57 | 43 | 29.99 | 61 | 7 | 0.00 | 252 |
| 2015-07-06 | None | 3 | 66 | 18 | 84 | 30.17 | 80 | 10 | 15 | 69 | 30.13 | 74 | 10 | 7 | 63 | 59 | 54 | 30.09 | 68 | 8 | 0.00 | 165 |
| 2015-07-07 | Rain | 5 | 72 | 29 | 93 | 30.12 | 84 | 10 | 23 | 77 | 30.05 | 75 | 10 | 10 | 68 | 63 | 61 | 29.92 | 65 | 10 | 0.02 | 160 |
| 2015-07-08 | Rain | 5 | 71 | 25 | 93 | 30.00 | 88 | 10 | 20 | 68 | 29.90 | 79 | 9 | 11 | 67 | 55 | 42 | 29.87 | 69 | 6 | 0.00 | 272 |
| 2015-07-09 | Rain | 6 | 60 | 18 | 93 | 30.03 | 69 | 10 | 15 | 77 | 29.98 | 66 | 10 | 8 | 57 | 55 | 61 | 29.87 | 63 | 5 | 0.15 | 67 |
| 2015-08-01 | Rain | 3 | 61 | 35 | 66 | 29.82 | 90 | 10 | 26 | 50 | 29.75 | 79 | 10 | 10 | 58 | 55 | 34 | 29.70 | 68 | 10 | 0.00 | 251 |
| 2015-08-10 | None | 3 | 62 | 24 | 87 | 30.06 | 83 | 10 | 21 | 67 | 30.02 | 73 | 10 | 10 | 59 | 56 | 47 | 29.97 | 63 | 10 | 0.00 | 212 |
| 2015-08-11 | Rain | 7 | 70 | 24 | 100 | 30.01 | 72 | 10 | 21 | 94 | 29.84 | 68 | 7 | 10 | 67 | 62 | 87 | 29.73 | 64 | 1 | 0.83 | 171 |
| 2015-08-12 | None | 4 | 70 | 21 | 100 | 29.88 | 85 | 10 | 15 | 70 | 29.76 | 77 | 10 | 9 | 63 | 56 | 40 | 29.71 | 68 | 10 | 0.00 | 257 |
| 2015-08-13 | None | 2 | 62 | 18 | 78 | 30.09 | 82 | 10 | 17 | 62 | 29.98 | 74 | 10 | 8 | 59 | 57 | 45 | 29.89 | 66 | 10 | 0.00 | 296 |
| 2015-08-14 | None | 1 | 61 | 23 | 78 | 30.14 | 86 | 10 | 17 | 57 | 30.11 | 75 | 10 | 9 | 57 | 52 | 36 | 30.06 | 63 | 10 | 0.00 | 225 |
| 2015-08-15 | Rain-Thunderstorm | 6 | 69 | 25 | 87 | 30.11 | 91 | 10 | 20 | 64 | 30.07 | 80 | 10 | 8 | 63 | 55 | 41 | 30.01 | 68 | 8 | 0.08 | 192 |
| 2015-08-16 | None | 3 | 68 | 22 | 93 | 30.09 | 90 | 10 | 17 | 70 | 30.07 | 79 | 10 | 7 | 66 | 64 | 46 | 30.04 | 67 | 10 | 0.00 | 221 |
| 2015-08-17 | None | 2 | 71 | 21 | 84 | 30.08 | 91 | 10 | 15 | 64 | 30.04 | 81 | 10 | 8 | 67 | 64 | 44 | 29.99 | 71 | 10 | 0.00 | 209 |
| 2015-08-18 | Rain-Thunderstorm | 4 | 71 | 38 | 90 | 30.03 | 87 | 10 | 29 | 76 | 30.01 | 79 | 8 | 8 | 69 | 65 | 61 | 29.97 | 71 | 0 | 0.14 | 192 |
| 2015-08-19 | None | 3 | 70 | 22 | 93 | 30.10 | 88 | 10 | 18 | 72 | 30.06 | 80 | 10 | 9 | 68 | 64 | 51 | 30.03 | 71 | 7 | 0.00 | 204 |
| 2015-08-02 | None | 1 | 63 | 26 | 73 | 29.90 | 88 | 10 | 20 | 52 | 29.86 | 78 | 10 | 11 | 54 | 51 | 30 | 29.82 | 68 | 10 | 0.00 | 254 |
| 2015-08-20 | None | 4 | 70 | 25 | 100 | 30.12 | 78 | 10 | 22 | 88 | 30.09 | 73 | 9 | 11 | 69 | 68 | 76 | 30.04 | 68 | 0 | 0.00 | 115 |
| 2015-08-21 | Fog-Rain-Thunderstorm | 7 | 75 | 20 | 100 | 30.05 | 83 | 10 | 14 | 87 | 30.02 | 75 | 4 | 6 | 70 | 66 | 74 | 29.98 | 67 | 0 | 0.63 | 91 |
| 2015-08-22 | Fog | 7 | 70 | 18 | 100 | 30.11 | 73 | 10 | 15 | 90 | 30.08 | 70 | 9 | 7 | 66 | 64 | 79 | 30.03 | 67 | 0 | 0.00 | 53 |
| 2015-08-23 | Rain | 8 | 70 | 25 | 100 | 30.06 | 71 | 10 | 14 | 97 | 30.01 | 69 | 3 | 8 | 68 | 66 | 93 | 29.96 | 67 | 0 | 0.02 | 22 |
| 2015-08-24 | None | 7 | 69 | 16 | 100 | 29.96 | 75 | 10 | 14 | 92 | 29.92 | 72 | 7 | 6 | 68 | 67 | 84 | 29.87 | 68 | 1 | 0.00 | 89 |
| 2015-08-25 | Fog | 6 | 72 | 21 | 100 | 29.91 | 81 | 10 | 17 | 81 | 29.89 | 74 | 6 | 9 | 69 | 66 | 62 | 29.83 | 67 | 0 | 0.00 | 133 |
| 2015-08-26 | Rain | 4 | 70 | 22 | 100 | 29.95 | 85 | 10 | 16 | 71 | 29.89 | 77 | 10 | 8 | 64 | 56 | 42 | 29.86 | 69 | 6 | 0.00 | 246 |
| 2015-08-27 | None | 2 | 56 | 22 | 68 | 30.07 | 82 | 10 | 17 | 54 | 29.98 | 74 | 10 | 10 | 54 | 52 | 39 | 29.94 | 65 | 10 | 0.00 | 289 |
| 2015-08-28 | None | 2 | 62 | 18 | 73 | 30.17 | 75 | 10 | 14 | 63 | 30.13 | 70 | 10 | 8 | 56 | 53 | 53 | 30.08 | 64 | 10 | 0.00 | 188 |
| 2015-08-29 | None | 3 | 58 | 22 | 78 | 30.19 | 82 | 10 | 16 | 59 | 30.14 | 73 | 10 | 7 | 55 | 53 | 39 | 30.08 | 63 | 10 | 0.00 | 242 |
| 2015-08-03 | Thunderstorm | 2 | 68 | 30 | 100 | 29.87 | 90 | 10 | 23 | 67 | 29.81 | 79 | 10 | 13 | 64 | 58 | 34 | 29.75 | 68 | 7 | 0.00 | 201 |
| 2015-08-30 | None | 5 | 65 | 26 | 78 | 30.09 | 88 | 10 | 17 | 58 | 30.03 | 79 | 10 | 9 | 61 | 58 | 37 | 29.98 | 69 | 10 | 0.00 | 254 |
| 2015-08-31 | None | 2 | 66 | 32 | 79 | 30.00 | 90 | 10 | 22 | 60 | 29.93 | 81 | 10 | 11 | 63 | 60 | 40 | 29.86 | 71 | 10 | 0.00 | 265 |
| 2015-08-04 | Fog-Rain-Hail-Thunderstorm | 5 | 72 | 51 | 90 | 29.88 | 89 | 10 | 38 | 68 | 29.83 | 78 | 8 | 9 | 66 | 62 | 46 | 29.76 | 66 | 0 | 0.49 | 222 |
| 2015-08-05 | None | 3 | 65 | 29 | 81 | 29.89 | 85 | 10 | 23 | 58 | 29.85 | 75 | 10 | 11 | 57 | 51 | 34 | 29.79 | 65 | 10 | 0.00 | 260 |
| 2015-08-06 | None | 3 | 55 | 22 | 67 | 29.93 | 82 | 10 | 18 | 51 | 29.90 | 74 | 10 | 9 | 53 | 50 | 35 | 29.86 | 65 | 10 | 0.00 | 278 |
| 2015-08-07 | None | 2 | 61 | 20 | 87 | 29.97 | 73 | 10 | 16 | 70 | 29.95 | 69 | 10 | 8 | 57 | 54 | 53 | 29.92 | 64 | 10 | 0.00 | 37 |
| 2015-08-08 | None | 4 | 61 | NA | 87 | 30.02 | 76 | 10 | 14 | 68 | 29.99 | 69 | 10 | 6 | 57 | 54 | 49 | 29.95 | 61 | 10 | 0.00 | 45 |
| 2015-08-09 | None | 5 | 61 | 26 | 93 | 30.05 | 73 | 10 | 20 | 80 | 30.03 | 68 | 10 | 9 | 59 | 57 | 66 | 30.00 | 62 | 10 | 0.00 | 36 |
| 2015-09-01 | None | 1 | 63 | NA | 78 | 30.06 | 79 | 10 | 15 | 65 | 30.02 | 74 | 10 | 9 | 62 | 59 | 52 | 29.96 | 69 | 10 | 0.00 | 54 |
| 2015-09-10 | Rain | 7 | 71 | 26 | 93 | 29.91 | 77 | 10 | 21 | 81 | 29.86 | 71 | 10 | 11 | 65 | 61 | 69 | 29.79 | 64 | 4 | 0.17 | 23 |
| 2015-09-11 | Rain | 7 | 63 | 33 | 100 | 29.82 | 73 | 10 | 25 | 84 | 29.75 | 68 | 8 | 10 | 61 | 59 | 68 | 29.69 | 63 | 2 | 0.66 | 15 |
| 2015-09-12 | Rain | 6 | 63 | 17 | 100 | 29.89 | 71 | 10 | 16 | 87 | 29.84 | 66 | 10 | 7 | 61 | 59 | 73 | 29.79 | 60 | 6 | 0.01 | 118 |
| 2015-09-13 | Rain | 8 | 65 | 23 | 100 | 29.79 | 66 | 10 | 20 | 94 | 29.75 | 65 | 6 | 10 | 62 | 59 | 87 | 29.71 | 63 | 0 | 0.38 | 85 |
| 2015-09-14 | None | 3 | 63 | 36 | 90 | 30.07 | 72 | 10 | 24 | 70 | 29.88 | 65 | 10 | 15 | 54 | 51 | 49 | 29.72 | 57 | 10 | 0.00 | 267 |
| 2015-09-15 | None | 0 | 58 | 22 | 67 | 30.25 | 84 | 10 | 16 | 52 | 30.20 | 73 | 10 | 11 | 54 | 51 | 36 | 30.09 | 62 | 10 | 0.00 | 278 |
| 2015-09-16 | None | 1 | 64 | 21 | 78 | 30.32 | 81 | 10 | 13 | 62 | 30.26 | 73 | 10 | 7 | 59 | 57 | 45 | 30.20 | 65 | 10 | 0.00 | 207 |
| 2015-09-17 | None | 1 | 65 | 20 | 84 | 30.19 | 89 | 10 | 14 | 58 | 30.10 | 77 | 10 | 7 | 59 | 53 | 31 | 30.02 | 64 | 10 | 0.00 | 231 |
| 2015-09-18 | None | 1 | 62 | 22 | 87 | 30.04 | 85 | 10 | 17 | 64 | 30.00 | 75 | 10 | 8 | 60 | 57 | 40 | 29.95 | 65 | 10 | 0.00 | 199 |
| 2015-09-19 | None | 4 | 67 | 21 | 100 | 30.00 | 79 | 10 | 17 | 74 | 29.95 | 71 | 8 | 10 | 62 | 57 | 48 | 29.87 | 62 | 1 | 0.00 | 198 |
| 2015-09-02 | None | 0 | 68 | 21 | 87 | 30.04 | 91 | 10 | 15 | 63 | 29.94 | 79 | 10 | 9 | 63 | 59 | 38 | 29.85 | 66 | 9 | 0.00 | 231 |
| 2015-09-20 | None | 4 | 66 | 24 | 90 | 30.13 | 75 | 10 | 18 | 63 | 29.96 | 66 | 10 | 12 | 55 | 46 | 36 | 29.83 | 57 | 10 | 0.00 | 295 |
| 2015-09-21 | None | 3 | 48 | 24 | 72 | 30.30 | 66 | 10 | 20 | 60 | 30.24 | 60 | 10 | 11 | 46 | 45 | 48 | 30.14 | 53 | 10 | 0.00 | 26 |
| 2015-09-22 | None | 6 | 57 | 20 | 93 | 30.34 | 68 | 10 | 16 | 76 | 30.31 | 62 | 10 | 9 | 53 | 48 | 58 | 30.28 | 56 | 10 | 0.00 | 30 |
| 2015-09-23 | None | 2 | 54 | 15 | 93 | 30.27 | 68 | 10 | 10 | 68 | 30.24 | 61 | 10 | 6 | 49 | 42 | 42 | 30.21 | 54 | 10 | 0.00 | 61 |
| 2015-09-24 | None | 1 | 54 | 20 | 78 | 30.39 | 74 | 10 | 16 | 62 | 30.31 | 66 | 10 | 9 | 52 | 48 | 46 | 30.22 | 58 | 10 | 0.00 | 26 |
| 2015-09-25 | None | 5 | 55 | 21 | 86 | 30.44 | 66 | 10 | 17 | 72 | 30.40 | 61 | 10 | 9 | 50 | 47 | 58 | 30.38 | 55 | 10 | 0.00 | 51 |
| 2015-09-26 | None | 4 | 49 | 28 | 77 | 30.53 | 63 | 10 | 20 | 64 | 30.49 | 57 | 10 | 10 | 45 | 39 | 51 | 30.40 | 50 | 10 | 0.00 | 42 |
| 2015-09-27 | None | 2 | 57 | 18 | 93 | 30.52 | 64 | 10 | 15 | 75 | 30.44 | 56 | 10 | 7 | 49 | 42 | 57 | 30.35 | 48 | 10 | 0.00 | 222 |
| 2015-09-28 | None | 4 | 66 | 20 | 93 | 30.34 | 78 | 10 | 16 | 75 | 30.23 | 67 | 10 | 7 | 60 | 53 | 56 | 30.15 | 56 | 10 | 0.00 | 185 |
| 2015-09-29 | Fog-Rain | 7 | 70 | 25 | 100 | 30.14 | 84 | 10 | 21 | 79 | 30.06 | 75 | 7 | 9 | 68 | 64 | 58 | 29.98 | 65 | 0 | 0.04 | 186 |
| 2015-09-03 | Rain-Thunderstorm | 4 | 68 | 14 | 84 | 29.94 | 82 | 10 | 12 | 73 | 29.87 | 76 | 9 | 6 | 66 | 65 | 62 | 29.83 | 70 | 7 | 0.01 | 91 |
| 2015-09-30 | Fog-Rain | 8 | 73 | 38 | 100 | 29.96 | 78 | 10 | 32 | 89 | 29.77 | 68 | 6 | 13 | 67 | 51 | 78 | 29.63 | 57 | 0 | 2.46 | 182 |
| 2015-09-04 | Rain | 6 | 69 | 32 | 93 | 30.27 | 72 | 10 | 23 | 78 | 30.14 | 67 | 9 | 11 | 60 | 55 | 63 | 29.94 | 62 | 5 | 0.00 | 47 |
| 2015-09-05 | None | 1 | 58 | 16 | 93 | 30.31 | 73 | 10 | 14 | 70 | 30.26 | 66 | 10 | 7 | 54 | 49 | 47 | 30.22 | 58 | 10 | 0.00 | 94 |
| 2015-09-06 | None | 1 | 63 | 23 | 90 | 30.22 | 82 | 10 | 18 | 69 | 30.16 | 72 | 10 | 10 | 59 | 57 | 48 | 30.10 | 61 | 10 | 0.00 | 190 |
| 2015-09-07 | None | 1 | 65 | 25 | 73 | 30.10 | 93 | 10 | 21 | 55 | 30.00 | 80 | 10 | 12 | 59 | 51 | 36 | 29.92 | 66 | 10 | 0.00 | 231 |
| 2015-09-08 | None | 2 | 72 | 24 | 84 | 29.97 | 96 | 10 | 21 | 63 | 29.94 | 84 | 9 | 7 | 67 | 64 | 41 | 29.90 | 72 | 6 | 0.20 | 225 |
| 2015-09-09 | None | 3 | 71 | 28 | 84 | 29.94 | 93 | 10 | 22 | 60 | 29.85 | 83 | 10 | 13 | 68 | 62 | 36 | 29.78 | 72 | 10 | 0.00 | 214 |
| 2015-10-01 | Rain | 7 | 50 | 38 | 77 | 30.24 | 59 | 10 | 30 | 72 | 30.13 | 57 | 10 | 17 | 48 | 45 | 67 | 29.97 | 54 | 10 | 0.00 | 22 |
| 2015-10-10 | None | 2 | 55 | 37 | 74 | 30.09 | 61 | 10 | 29 | 53 | 30.02 | 55 | 10 | 10 | 40 | 31 | 32 | 29.80 | 48 | 10 | 0.00 | 313 |
| 2015-10-11 | None | 4 | 49 | 28 | 86 | 30.03 | 68 | 10 | 23 | 63 | 29.90 | 58 | 10 | 14 | 45 | 43 | 39 | 29.79 | 48 | 10 | 0.00 | 222 |
| 2015-10-12 | None | 0 | 56 | NA | 89 | 29.86 | 76 | 10 | 15 | 65 | 29.80 | 64 | 10 | 8 | 51 | 48 | 41 | 29.74 | 51 | 10 | 0.00 | 199 |
| 2015-10-13 | Fog-Rain | 6 | 62 | 21 | 100 | 29.93 | 72 | 10 | 16 | 84 | 29.60 | 64 | 7 | 8 | 58 | 52 | 68 | 29.47 | 55 | 0 | 0.12 | 148 |
| 2015-10-14 | None | 3 | 57 | 28 | 84 | 29.81 | 68 | 10 | 21 | 65 | 29.66 | 60 | 10 | 13 | 46 | 37 | 45 | 29.56 | 51 | 10 | 0.00 | 262 |
| 2015-10-15 | None | 1 | 42 | 24 | 71 | 29.96 | 62 | 10 | 16 | 55 | 29.91 | 55 | 10 | 9 | 38 | 36 | 39 | 29.82 | 47 | 10 | 0.00 | 266 |
| 2015-10-16 | Rain | 3 | 45 | 29 | 74 | 29.98 | 61 | 10 | 22 | 57 | 29.90 | 56 | 10 | 12 | 40 | 35 | 39 | 29.84 | 50 | 10 | 0.00 | 262 |
| 2015-10-17 | None | 4 | 40 | 29 | 83 | 30.14 | 56 | 10 | 23 | 58 | 30.01 | 48 | 10 | 12 | 32 | 24 | 32 | 29.95 | 40 | 10 | 0.00 | 287 |
| 2015-10-18 | None | 2 | 29 | 30 | 64 | 30.33 | 47 | 10 | 22 | 46 | 30.22 | 40 | 10 | 11 | 19 | 13 | 28 | 30.13 | 33 | 10 | 0.00 | 319 |
| 2015-10-19 | None | 2 | 31 | 22 | 69 | 30.45 | 48 | 10 | 17 | 48 | 30.34 | 40 | 10 | 11 | 20 | 15 | 26 | 30.18 | 31 | 10 | 0.00 | 275 |
| 2015-10-02 | Rain | 8 | 45 | 36 | 80 | 30.36 | 54 | 10 | 25 | 73 | 30.28 | 52 | 10 | 20 | 43 | 40 | 66 | 30.22 | 50 | 7 | 0.08 | 28 |
| 2015-10-20 | None | 6 | 43 | 28 | 65 | 30.21 | 66 | 10 | 21 | 51 | 30.13 | 56 | 10 | 12 | 37 | 32 | 36 | 30.07 | 45 | 10 | 0.00 | 234 |
| 2015-10-21 | Rain | 8 | 54 | 16 | 100 | 30.33 | 61 | 10 | 13 | 76 | 30.28 | 57 | 9 | 6 | 48 | 42 | 51 | 30.17 | 53 | 4 | 0.07 | 68 |
| 2015-10-22 | Fog | 7 | 56 | 29 | 100 | 30.28 | 73 | 10 | 24 | 71 | 30.13 | 63 | 7 | 11 | 52 | 47 | 41 | 29.96 | 52 | 0 | 0.00 | 187 |
| 2015-10-23 | None | 2 | 38 | 35 | 60 | 30.37 | 59 | 10 | 26 | 49 | 30.19 | 50 | 10 | 14 | 31 | 26 | 38 | 30.03 | 40 | 10 | 0.00 | 320 |
| 2015-10-24 | None | 8 | 42 | 16 | 80 | 30.44 | 49 | 10 | 13 | 71 | 30.37 | 44 | 10 | 6 | 35 | 28 | 61 | 30.25 | 38 | 10 | 0.00 | 4 |
| 2015-10-25 | Rain | 7 | 54 | 35 | 89 | 30.19 | 63 | 10 | 24 | 72 | 30.07 | 56 | 10 | 12 | 47 | 35 | 55 | 29.98 | 48 | 7 | 0.03 | 233 |
| 2015-10-26 | None | 2 | 36 | 26 | 70 | 30.53 | 52 | 10 | 18 | 57 | 30.40 | 48 | 10 | 9 | 33 | 30 | 44 | 30.21 | 43 | 10 | 0.00 | 294 |
| 2015-10-27 | None | 4 | 41 | 22 | 83 | 30.62 | 54 | 10 | 12 | 62 | 30.56 | 46 | 10 | 6 | 34 | 28 | 41 | 30.53 | 38 | 10 | 0.00 | 178 |
| 2015-10-28 | Rain | 7 | 61 | 40 | 100 | 30.57 | 65 | 10 | 29 | 83 | 30.27 | 54 | 7 | 17 | 48 | 39 | 66 | 29.79 | 42 | 2 | 0.36 | 114 |
| 2015-10-29 | Rain | 7 | 66 | 39 | 100 | 29.75 | 75 | 10 | 29 | 65 | 29.55 | 66 | 8 | 17 | 57 | 30 | 30 | 29.44 | 57 | 2 | 0.73 | 206 |
| 2015-10-03 | Rain | 8 | 47 | 37 | 80 | 30.46 | 54 | 10 | 29 | 72 | 30.42 | 52 | 9 | 22 | 43 | 41 | 64 | 30.35 | 49 | 5 | 0.01 | 39 |
| 2015-10-30 | None | 1 | 37 | 31 | 53 | 30.09 | 61 | 10 | 23 | 41 | 29.83 | 52 | 10 | 13 | 31 | 26 | 28 | 29.64 | 42 | 10 | 0.00 | 289 |
| 2015-10-31 | None | 4 | 39 | 17 | 71 | 30.22 | 52 | 10 | 13 | 58 | 30.14 | 45 | 10 | 7 | 31 | 26 | 44 | 30.06 | 38 | 10 | 0.00 | 224 |
| 2015-10-04 | None | 7 | 45 | 35 | 77 | 30.44 | 56 | 10 | 28 | 66 | 30.39 | 54 | 10 | 18 | 42 | 38 | 54 | 30.30 | 51 | 10 | 0.00 | 40 |
| 2015-10-05 | None | 6 | 50 | 18 | 96 | 30.29 | 61 | 10 | 15 | 80 | 30.20 | 55 | 10 | 9 | 47 | 41 | 64 | 30.09 | 48 | 10 | 0.00 | 14 |
| 2015-10-06 | None | 1 | 49 | 15 | 89 | 30.08 | 64 | 10 | 12 | 71 | 30.00 | 56 | 10 | 6 | 46 | 43 | 52 | 29.94 | 48 | 10 | 0.00 | 344 |
| 2015-10-07 | None | 3 | 54 | 17 | 77 | 29.99 | 72 | 10 | 13 | 61 | 29.95 | 62 | 10 | 7 | 47 | 43 | 44 | 29.90 | 52 | 10 | 0.00 | 299 |
| 2015-10-08 | None | 2 | 50 | 18 | 83 | 30.16 | 62 | 10 | 13 | 61 | 30.11 | 57 | 10 | 9 | 44 | 35 | 39 | 30.00 | 51 | 10 | 0.00 | 14 |
| 2015-10-09 | Rain | 7 | 63 | 40 | 93 | 30.12 | 72 | 10 | 31 | 75 | 29.85 | 62 | 8 | 15 | 57 | 49 | 57 | 29.72 | 52 | 2 | 0.34 | 210 |
| 2015-11-01 | Rain | 6 | 50 | 28 | 80 | 30.07 | 62 | 10 | 22 | 73 | 29.91 | 55 | 10 | 11 | 46 | 39 | 65 | 29.79 | 48 | 10 | 0.00 | 207 |
| 2015-11-10 | Rain | 7 | 47 | 22 | 80 | 30.31 | 53 | 10 | 17 | 67 | 30.15 | 49 | 10 | 8 | 40 | 36 | 54 | 29.89 | 44 | 7 | 0.07 | 37 |
| 2015-11-11 | Rain | 8 | 49 | 33 | 93 | 29.98 | 50 | 10 | 25 | 90 | 29.85 | 48 | 4 | 16 | 45 | 42 | 86 | 29.78 | 46 | 2 | 0.54 | 13 |
| 2015-11-12 | Rain | 8 | 54 | 23 | 100 | 29.98 | 57 | 10 | 18 | 90 | 29.75 | 52 | 8 | 7 | 47 | 42 | 80 | 29.42 | 46 | 0 | 0.04 | 173 |
| 2015-11-13 | Rain | 3 | 54 | 39 | 86 | 29.62 | 59 | 10 | 29 | 65 | 29.51 | 53 | 10 | 18 | 39 | 30 | 44 | 29.43 | 46 | 10 | 0.01 | 257 |
| 2015-11-14 | None | 2 | 31 | 43 | 62 | 30.12 | 47 | 10 | 31 | 51 | 29.89 | 42 | 10 | 16 | 25 | 19 | 39 | 29.63 | 37 | 10 | 0.00 | 279 |
| 2015-11-15 | None | 6 | 35 | 23 | 64 | 30.21 | 54 | 10 | 18 | 54 | 30.12 | 46 | 10 | 10 | 30 | 25 | 44 | 30.05 | 37 | 10 | 0.00 | 254 |
| 2015-11-16 | None | 3 | 37 | 28 | 66 | 30.41 | 61 | 10 | 21 | 42 | 30.18 | 50 | 10 | 11 | 29 | 14 | 17 | 30.09 | 39 | 10 | 0.00 | 306 |
| 2015-11-17 | None | 1 | 31 | 17 | 76 | 30.60 | 45 | 10 | 14 | 62 | 30.54 | 39 | 10 | 7 | 26 | 20 | 48 | 30.42 | 33 | 10 | 0.00 | 35 |
| 2015-11-18 | None | 2 | 38 | 17 | 85 | 30.61 | 48 | 10 | 15 | 69 | 30.55 | 40 | 10 | 6 | 33 | 29 | 53 | 30.46 | 31 | 10 | 0.00 | 158 |
| 2015-11-19 | Rain | 8 | 50 | 20 | 89 | 30.44 | 55 | 10 | 16 | 83 | 30.30 | 49 | 10 | 9 | 44 | 39 | 77 | 30.06 | 43 | 10 | 0.00 | 132 |
| 2015-11-02 | None | 2 | 48 | 23 | 83 | 30.11 | 64 | 10 | 18 | 63 | 30.02 | 58 | 10 | 7 | 42 | 39 | 43 | 29.94 | 51 | 10 | 0.00 | 251 |
| 2015-11-20 | Rain | 6 | 58 | 29 | 100 | 30.18 | 61 | 10 | 25 | 69 | 30.02 | 53 | 7 | 13 | 47 | 26 | 38 | 29.94 | 44 | 2 | 0.86 | 266 |
| 2015-11-21 | None | 4 | 31 | 16 | 70 | 30.30 | 48 | 10 | 13 | 60 | 30.20 | 43 | 10 | 8 | 28 | 23 | 49 | 30.04 | 38 | 10 | 0.00 | 1 |
| 2015-11-22 | Rain | 8 | 44 | 25 | 89 | 30.00 | 49 | 10 | 20 | 80 | 29.91 | 43 | 9 | 7 | 39 | 31 | 70 | 29.82 | 36 | 5 | 0.30 | 341 |
| 2015-11-23 | Rain | 3 | 36 | 31 | 85 | 30.15 | 42 | 10 | 22 | 56 | 29.94 | 36 | 10 | 13 | 18 | 5 | 27 | 29.80 | 30 | 10 | 0.04 | 316 |
| 2015-11-24 | None | 1 | 21 | 22 | 50 | 30.53 | 44 | 10 | 15 | 42 | 30.33 | 37 | 10 | 8 | 16 | 11 | 33 | 30.16 | 29 | 10 | 0.00 | 271 |
| 2015-11-25 | None | 1 | 34 | 18 | 76 | 30.88 | 44 | 10 | 14 | 63 | 30.76 | 37 | 10 | 6 | 27 | 20 | 49 | 30.54 | 30 | 10 | 0.00 | 83 |
| 2015-11-26 | None | 6 | 49 | 28 | 100 | 30.87 | 59 | 10 | 22 | 79 | 30.77 | 49 | 9 | 10 | 42 | 34 | 57 | 30.64 | 38 | 5 | 0.00 | 180 |
| 2015-11-27 | None | 7 | 52 | 32 | 100 | 30.63 | 64 | 10 | 26 | 78 | 30.41 | 56 | 9 | 14 | 49 | 47 | 56 | 30.15 | 48 | 5 | 0.00 | 209 |
| 2015-11-28 | Rain | 8 | 50 | 23 | 93 | 30.20 | 60 | 10 | 18 | 80 | 30.16 | 51 | 9 | 10 | 43 | 36 | 67 | 30.11 | 41 | 4 | 0.21 | 358 |
| 2015-11-29 | None | 4 | 33 | 20 | 79 | 30.42 | 44 | 10 | 16 | 58 | 30.26 | 38 | 10 | 10 | 23 | 15 | 36 | 30.19 | 32 | 10 | 0.00 | 326 |
| 2015-11-03 | None | 1 | 44 | NA | 82 | 30.25 | 73 | 10 | 16 | 57 | 30.13 | 60 | 10 | 8 | 42 | 40 | 31 | 30.06 | 47 | 10 | 0.00 | 281 |
| 2015-11-30 | None | 6 | 26 | 17 | 75 | 30.53 | 38 | 10 | 14 | 65 | 30.46 | 33 | 10 | 9 | 23 | 18 | 54 | 30.39 | 28 | 10 | 0.00 | 65 |
| 2015-11-04 | None | 0 | 49 | 16 | 83 | 30.40 | 60 | 10 | 13 | 69 | 30.33 | 55 | 10 | 7 | 45 | 43 | 55 | 30.26 | 49 | 10 | 0.00 | 129 |
| 2015-11-05 | None | 4 | 61 | 31 | 100 | 30.30 | 76 | 10 | 22 | 77 | 30.20 | 63 | 9 | 12 | 55 | 48 | 53 | 30.09 | 50 | 5 | 0.00 | 224 |
| 2015-11-06 | None | 4 | 62 | 32 | 93 | 30.07 | 73 | 10 | 26 | 79 | 29.90 | 68 | 10 | 15 | 61 | 54 | 64 | 29.71 | 62 | 10 | 0.00 | 222 |
| 2015-11-07 | None | 6 | 45 | 33 | 57 | 30.02 | 69 | 10 | 25 | 48 | 29.93 | 60 | 10 | 13 | 38 | 33 | 39 | 29.83 | 50 | 10 | 0.00 | 280 |
| 2015-11-08 | None | 0 | 34 | 25 | 65 | 30.38 | 56 | 10 | 18 | 48 | 30.25 | 50 | 10 | 12 | 30 | 24 | 30 | 30.04 | 44 | 10 | 0.00 | 283 |
| 2015-11-09 | None | 2 | 36 | 20 | 70 | 30.43 | 60 | 10 | 16 | 52 | 30.37 | 51 | 10 | 9 | 32 | 30 | 33 | 30.32 | 41 | 10 | 0.00 | 237 |
| 2015-12-01 | Rain | 7 | 43 | 17 | 96 | 30.40 | 45 | 10 | 15 | 83 | 30.24 | 39 | 8 | 6 | 35 | 25 | 69 | 30.01 | 32 | 1 | 0.14 | 109 |
Your data are now tidy and in an easy format for others to examine!
# Save our tidy dataframe to csv file
write.csv(weather6,'../xDatasets/weather_clean.csv')